Asp.net Core 微信公众号开发系列

参考:http://www.cnblogs.com/zskbll/p/4074855.html

一、微信公众平台操作流程

1、先到微信公众平台注册账号

2、登录成功后找到开发-->开发者工具-->公众平台测试帐号,点击进入

3、到测试账号管理配置你的服务器地址、跟Token。附测试接口源码。

源码信息如下:

/// <summary>
/// 验证微信签名
/// </summary>
/// * 将token、timestamp、nonce三个参数进行字典序排序
/// * 将三个参数字符串拼接成一个字符串进行sha1加密
/// * 开发者获得加密后的字符串可与signature对比,标识该请求来源于微信。
/// <returns></returns>
[HttpGet]
public ActionResult WeChatCheck(string signature, string timestamp, string nonce, string echostr, string token)
{
     string[] ArrTmp = { "wechat", timestamp, nonce };
     //字典排序
     Array.Sort(ArrTmp);
     string tmpStr = string.Join("", ArrTmp);
     //字符加密
     var sha1 = HmacSha1Sign(tmpStr);
     if (sha1.Equals(signature))
     {
         return Content(echostr);
     }
     else
     {
         return null;
     }
}
/// <summary>
/// HMAC-SHA1加密算法
/// </summary>
/// <param name="str">加密字符串</param>
/// <returns></returns>
public  string HmacSha1Sign(string str)
{
    var sha1 = System.Security.Cryptography.SHA1.Create();
    var hash = sha1.ComputeHash(Encoding.Default.GetBytes(str));
    string byte2String = null;
    for (int i = 0; i < hash.Length; i++)
    {
       byte2String += hash[i].ToString("x2");
    }
    return byte2String;
}

 demo源码地址:https://github.com/ice-ko/WeChat

posted @ 2017-12-11 10:15  ice.ko  阅读(6295)  评论(6编辑  收藏  举报