c#微信公众号开发----基本设置,服务器配置token验证
内容导读
互联网集市收集整理的这篇技术教程文章主要介绍了c#微信公众号开发----基本设置,服务器配置token验证,小编现在分享给大家,供广大互联网技能从业者学习和参考。文章包含2834字,纯文字阅读大概需要5分钟。
内容图文
![c#微信公众号开发----基本设置,服务器配置token验证](/upload/InfoBanner/zyjiaocheng/666/872c8773681041dba6cfb4eed9268622.jpg)
c#微信公众号开发----基本设置
参考微信官方文档
https://developers.weixin.qq.com/doc/offiaccount/Basic_Information/Access_Overview.html
开发→基本配置
公众号开发信息
注:1.记录好开发者密码,会在程序中验证过程中使用到。
2.通过appid和appsecret调用access_token时,至有在ip白名单的ip才能成功调用。
服务器配置
若此处开启服务器配置,设置的自动回复和自定义菜单将全部失效。必须在程序中重写相关方法。
点击修改配置,token为随意填写的参数
我是用的是一般处理程序编写的微信接口token验证,参数参考官方文档。代码如下:
开发者通过检验signature对请求进行校验。若确认此次GET请求来自微信服务器,请原样返回echostr参数内容,则接入生效,成为开发者成功,否则接入失败。加密/校验流程如下:
1)将token、timestamp、nonce三个参数进行字典序排序
2)将三个参数字符串拼接成一个字符串进行sha1加密
3)开发者获得加密后的字符串可与signature对比,标识该请求来源于微信。
1 public void ProcessRequest(HttpContext context){ 2 //验证token 3 string postString = string.Empty; 4 string token ="aabbcc"; //验证token,随意填写 5 if(string.IsNullEmpty(token)){ 6 return ; 7 } 8 string echoString = HttpContext.Current.Request.QueryString["echoStr"]; 9 string signature = HttpContext.Current.Request.QueryString["sianature"]; 10 string timestamp = HttpContext.Current.Request.QueryString["timestamp"]; 11 string nonce = HttpContext.Current.Request.QueryString["nonce"]; 12 if(CheckSignature(token,signature,timestamp,nonce)){ 13 if(!string.IsNullOrEmpty(echiString)){ 14 HttpContext.Current.Response.Write(echoString); 15 HttpContext.Current.Response.End(); 16 } 17 } 18 }
1 /// <summary> 2 /// 验证微信签名 3 /// </summary> 4 /// <param name="token">token</param> 5 /// <param name="signature">签名</param> 6 /// <param name="timestamp">时间戳</param> 7 /// <param name="nonce">随机数</param> 8 /// <returns></returns> 9 public static bool CheckSignature(string token, 10 string signature, string timestamp, string nonce) 11 { 12 string[] ArrTmp = { token, timestamp, nonce }; 13 //字典排序 14 Array.Sort(ArrTmp); 15 //拼接 16 string tmpStr = string.Join("", ArrTmp); 17 //sha1验证 18 tmpStr = FormsAuthentication.HashPasswordForStoringInConfigFile(tmpStr, "SHA1"); 19 //tmpStr = Membership.CreateUser(tmpStr, "SHA1"); 20 tmpStr = tmpStr.ToLower(); 21 22 if (tmpStr == signature) 23 { 24 return true; 25 } 26 else 27 { 28 return false; 29 } 30 }
将编写的代码路径,填写到url里,前面填写的“aabbcc”,此时token里填写的也必须为“aabbcc”。
token必须保持一致,若不一致会弹出提示。
内容总结
以上是互联网集市为您收集整理的c#微信公众号开发----基本设置,服务器配置token验证全部内容,希望文章能够帮你解决c#微信公众号开发----基本设置,服务器配置token验证所遇到的程序开发问题。 如果觉得互联网集市技术教程内容还不错,欢迎将互联网集市网站推荐给程序员好友。
内容备注
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 gblab@vip.qq.com 举报,一经查实,本站将立刻删除。
内容手机端
扫描二维码推送至手机访问。