星空网 > 软件开发 > ASP.net

asp.net mvc 5 微信接入VB版

微信接入官方文档是php的,网上被抄好几遍的代码是c#的,就是没vb的。今天我把这个坑填了,做vb版的接入认证。

首先是照着开发文档把微信接入的模型写好。在Models文件夹新建一个Model

Public Class WeChatRequestModel  ''' <summary>  ''' 加密签名  ''' </summary>  Public Property signature$  ''' <summary>  ''' 时间戳  ''' </summary>  Public Property timestamp$  ''' <summary>  ''' 随机数  ''' </summary>  Public Property nonce$  ''' <summary>  ''' 用于传回的随机字符串  ''' </summary>  Public Property echostr$End Class

 模型建立完成之后,新建个Controller。

微信认证是把nonce,Token,timestamp排序,然后算SHA1与signature比较。Token作为一个字符串常量,根据申请时填写的Token编写。

Const Token = "你申请的Token"

 

剩下的代码就是把那个php代码翻译一下,注意不要用过时的成员比如FormsAuthentication,免得以后迁移到asp.net core要重写代码:

 1   Private Function SHA1$(str$) 2     Return Encoding.UTF8.GetString(System.Security.Cryptography.SHA1.Create().ComputeHash(Encoding.UTF8.GetBytes(str))) 3   End Function 4   Private Function CheckSignature(data As WeChatRequestModel) As Boolean 5     Return data.signature = SHA1(String.Join("", Aggregate s In {data.nonce, Token, data.timestamp} Order By s Into ToArray)).ToLower() 6   End Function 7   <HttpGet> 8   Public Sub Authenticate(data As WeChatRequestModel) 9     If CheckSignature(data) AndAlso Not String.IsNullOrEmpty(data.echostr) Then10       Response.Write(data.echostr)11       Response.End()12     End If13   End Sub

 




原标题:asp.net mvc 5 微信接入VB版

关键词:ASP.NET

*特别声明:以上内容来自于网络收集,著作权属原作者所有,如有侵权,请联系我们: admin#shaoqun.com (#换成@)。

SuperTradeTool:https://www.goluckyvip.com/tag/25836.html
Supply:https://www.goluckyvip.com/tag/25837.html
Supply Chain Connect:https://www.goluckyvip.com/tag/25838.html
Supreme Lister:https://www.goluckyvip.com/tag/25839.html
订单成交:https://www.goluckyvip.com/tag/2584.html
SureDone:https://www.goluckyvip.com/tag/25840.html
TikTok,数据观察与竞品分析的关键 :https://www.xlkjsw.com/news/92276.html
沃尔玛崛起,会撼动亚马逊的地位吗?:https://www.kjdsnews.com/a/1842193.html
相关文章
我的浏览记录
最新相关资讯
海外公司注册 | 跨境电商服务平台 | 深圳旅行社 | 东南亚物流