/// <summary>
/// 微信验证
/// </summary>
/// <param name="echostr"></param>
/// <param name="signature"></param>
/// <param name="timestamp"></param>
/// <param name="nonce"></param>
/// <returns></returns>
public IActionResult WeChatSign(string echostr,string signature,string timestamp,string nonce)
{
string _token = "HanLiKongGu"; if (CheckSignAture(_token, timestamp, nonce, signature))
{
if (!string.IsNullOrEmpty(echostr))
{
return Content(echostr);
}
}
return Content("Error");
} /// <summary>
/// 验证签名是否一致
/// </summary>
/// <param name="token">微信平台设置的口令</param>
/// <param name="timestamp">时间戳</param>
/// <param name="nonce">随机数</param>
/// <param name="signature">微信加密签名</param>
/// <returns></returns>
public bool CheckSignAture(string token, string timestamp, string nonce, string signature)
{
string[] strs = new string[] { token, timestamp, nonce };//把参数放到数组
Array.Sort(strs);//加密/校验流程1、数组排序
string sign = string.Join("", strs);
sign = GetSHA1Str(sign);
if (sign == signature)
{
return true;
}
else
{
return false;
} } /// <summary>
/// SHA1加密方法
/// </summary>
/// <param name="str">需要加密的字符串</param>
/// <returns></returns>
public string GetSHA1Str(string str)
{
byte[] _byte = Encoding.Default.GetBytes(str);
HashAlgorithm ha = new SHA1CryptoServiceProvider();
_byte = ha.ComputeHash(_byte);
StringBuilder sha1Str = new StringBuilder();
foreach (byte b in _byte)
{
sha1Str.AppendFormat("{0:x2}", b);
}
return sha1Str.ToString();
}

推荐文章:https://www.cnblogs.com/HelloMyWorld/p/6380081.html

http://blog.csdn.net/inforstack/article/details/47780275

微信Token验证的更多相关文章

  1. 8-网页,网站,微信公众号基础入门(使用Python程序实现微信token验证)

    https://www.cnblogs.com/yangfengwu/p/11062034.html 设置一下IP白名单:   填写自己的服务器的IP地址 是不是不可以哈,有多少人都会入这个坑.... ...

  2. .NET 微信Token验证和消息接收和回复

    public class wxXmlModel { public string ToUserName { get; set; } public string FromUserName { get; s ...

  3. 微信token验证失败的几种情况

    最近在研究用PHP做微信开发的时候,“修改配置时”,总是遇到token验证失败的提示.历经一番查找,种种输出日志和echo,发现,如果不echo调试信息,也不写日志,就不需要ob_clean(),如果 ...

  4. 微信token验证源码分享(c#版)

    在开发时遇到一个问题: 上线后提交申请微信提示"您的服务器没有正确响应token验证...",我查看日志发现根本就没有接收到来自微信的参数. 后来我又记录了微信请求方式和请求的字符 ...

  5. 微信token验证失败的解决方法

    一.问题由来 在使用URL和Token启用微信公众平台开发模式消息接口的时候,我们会碰到下面三种情况 1. token校验失败 这样回头检查一下各项配置是否正确.如果确定配置没有问题,请按下面的方法检 ...

  6. 微信 token 验证

    package org.sxl.weixin; import java.security.MessageDigest; import java.security.NoSuchAlgorithmExce ...

  7. .net 微信Token验证

    首次接受这个项目,看了微信的API,云里雾里,经过几经测试,理清思路 开发者自个申请,微信API给出四个参数: 下面我解释下 signature 是微信加密签名 即:微信服务器将 timetamp n ...

  8. 9-网页,网站,微信公众号基础入门(使用PHP实现微信token验证)

    https://www.cnblogs.com/yangfengwu/p/11062422.html 这一节看怎么用PHP实现上一节的功能 关掉上一节的 学了这么久,忘了告诉大家怎么关闭程序了.... ...

  9. 总想自己动动手系列·3·微信公众号和外网服务交互之通过TOKEN验证(准备篇·1)

    一.准备工作 (1)准备一个微信公众号(对私的订阅号或者对公的服务号). (2)准备一台部署了web应用,并且已经发布出去的Linux服务器(需要说明的是:微信公众号强烈建议使用80端口,使用其他自定 ...

随机推荐

  1. java内存基础(一)

    博客园 闪存 首页 新随笔 联系 管理 订阅 随笔- 35  文章- 0  评论- 29  关于Java 数组内存分配一点认识  //总结:[ 数组引用变量存储在栈内存中,数组对象存储在堆内存当中.数 ...

  2. java代码水仙花

    总结:分离出百位,十位,各位,我总是模模糊糊的,总是分不清取膜与除号的作用区别: “%”的意思是“取膜”,表示取得的是余数 “/”的意思是除,得到的是除数. package com.a; //求水仙花 ...

  3. 详解调试Apache的mod_rewrite模块

    大家都知道Apache里面的Rewrite规则是一件很蛋疼的事情,有时候只是想做一个伪静态而已,不想去研究那些复杂的规则,可官方给的规则又常常出错,出了问题我们就要调试一下,看看提交的参数被映射到了哪 ...

  4. thingsboard在windows下安装和使用

    在官网下载thingsboard和tb-gateway 需要安装java8 thingsboard服务安装 https://thingsboard.io/docs/user-guide/install ...

  5. popup功能

    urls: #!/usr/bin/env python3 # -*- coding: utf-8 -*- from django.conf.urls import url from chapter01 ...

  6. Bootstrap日期插件中文实现

    Bootstrap的相关JS和CSS直接跳过. <script type="text/javascript" src="static/js/jquery-1.9.1 ...

  7. C# XML 文件中的空格值问题

    C# XML 文件中的空格值问题 运行环境:Window7 64bit,.NetFramework4.61,C# 6.0: 编者:乌龙哈里 2017-02-15 近期正在写我的简易标记文件格式的程序, ...

  8. 【286】◀▶ Python 内置函数说明

    参考: Python 内置函数 01   abs() 返回数字的绝对值. 02   all() 用于判断给定的可迭代参数 iterable 中的所有元素是否不为 0.''.False 或者 itera ...

  9. WDCP从php5.2升级到5.3的办法,以及升级过程中iconv错误的处理

    从wdcp官方论坛我们可以找到一个询问升级的帖子,然后管理员在回复中也提供了升级方法: cd /tmp wget -c http://dl.wdlinux.cn:5180/soft/php-5.3.1 ...

  10. 【Docker官方文档】理解Docker

    本文来自Docker的官方文档,详细介绍了Docker的体系结构.重要概念.内部工作机理等内容,推荐不了解Docker内部原理的同学阅读. 什么是Docker? Docker是一个用于开发.交付和运行 ...