tnblog
首页
视频
资源
登录

微信验证Token

6245人阅读 2019/12/11 14:47 总访问:448730 评论:0 收藏:0 手机
分类: 笔记

const string Token = "你的token";
    
        protected void Page_Load(object sender, EventArgs e)
        {
            
            if (Request.HttpMethod.ToLower() == "post")
            {
            }
            else
            {      
                Valid();
            }
        }
       //验证token
        private void Valid()
        {
            string echoStr = Request.QueryString["echoStr"].ToString();//微信自动传过来的echostr
            if (CheckSignature())
            {
                if (!string.IsNullOrEmpty(echoStr))//当随机数和token验证成功后,返回echostr给微信,就可以了
                {
                    Response.Write(echoStr);
                    Response.End();
                }
            }

        }

         /// <summary>
        /// 验证微信签名
        /// </summary>
        /// * 将token、timestamp、nonce三个参数进行字典序排序
        /// * 将三个参数字符串拼接成一个字符串进行sha1加密
        /// * 开发者获得加密后的字符串可与signature对比,标识该请求来源于微信。
        /// <returns></returns>
        private bool CheckSignature()
        
         {
            string signature = Request.QueryString["signature"].ToString();
            string timestamp = Request.QueryString["timestamp"].ToString();
            string nonce = Request.QueryString["nonce"].ToString();
            string[] ArrTmp = { Token, timestamp, nonce };
            Array.Sort(ArrTmp);//字典排序  
            string tmpStr = string.Join("", ArrTmp);
            tmpStr = FormsAuthentication.HashPasswordForStoringInConfigFile(tmpStr, "SHA1");//对该字符串进行sha1加密  
            tmpStr = tmpStr.ToLower();//对字符串中的字母部分进行小写转换,非字母字符不作处理  
            if (tmpStr == signature)//开发者获得加密后的字符串可与signature对比,标识该请求来源于微信。开发者通过检验signature对请求进行校验,若确认此次GET请求来自微信服务器,请原样返回echostr参数内容,则接入生效,否则接入失败  
            {
                return true;
            }
            else
                return false;
        }



评价

微信验证Token失败解决方法

第一个为你的服务器地址第二个位你的token 可以随便输 但 需要代码的验证 验证如下 新建一个mvc项目在控制器项目写如下代码...

C 使用CancellationTokenSource取消多线程

有时间我们在使用多线程的时候,需要取消线程的执行,可以使用CancellationTokenSource来取消对Task开辟多线程的取消如下:...

类型“DbSet”在未引用的程序集中定义。必须添加对程序集“EntityFramework Version=5.0.0.0 Culture=neutral PublicKeyToken=b7

在用mvc+ef的时候在DAL层引用上下文信息的时候会报出下面错误其实就是没得EntityFromwork,打开vs项目,点击工具,选择NuGe...

.net 微信开发获取access_Token使用缓存处理Token过期

获取access_token很简单,使用httpclient发起一个请求就可以了,我们使用redis做一下缓存处理publicstaticstringGetToken()...

AJAX调用webapi上传图片或文件。设置Token,设置Authorization Bearer

AJAX调用webapi上传图片或文件,并返回刚上传的文件名。废话不多说直接贴代码吧html相关:&lt;!DOCTYPEhtml&gt; &lt;html&...

使用 JSON WEB Token (jwt) 验证

一、什么JSON Web Tokens?JSON Web Tokens是一种开放的行业标准 RFC 7519方法,用于在双方之间安全地表示索赔。JWT.IO允许...

.NET HttpClient和webapi相关的东东先记录一点。传递Authorization headerToken

get请求传递Authorization header,tokenstringurl=&quot;你请求的url&quot;; stringtoken=&quot;yourtoken&quot;; Http...

net core使用jwt二 : 验证前台传递的Token

上一篇说了net core中生成jwt:http://www.tnblog.net/aojiancc2/article/details/2815现在说说怎么来验证前台传递的jwt,其...

net core使用jwt 三: 使用过滤器实现通用Token验证Token验证工具类

net core使用jwt二 : 验证前台传递的tokenhttp://www.tnblog.net/aojiancc2/article/details/2845过滤器实现通用token验证...

Redis缓存Token+设置过期时间+后台设置菜单

今天我们记录一下后台访问接口+Redis缓存数据首先我们要调一下接口这里我们要拿到数据(Token)的话 需要反序列化因为我这个...

微信各公众号Access_Token获取(一)

接口调用请求说明https请求方式:GET https://api.weixin.qq.com/cgi-bin/token?grant_type=client_credential&amp;appid=A...

微信公众号Access_Token获取(二)

接口调用请求说明(可参考《微信各公众号Access_token获取(一)》)https请求方式:GET https://api.weixin.qq.com/cgi-bin/t...

微信公众开发Token的获取和Redis缓存结合用

创建一个类库DTO_Token_Tools,在创建一个工具类在工具类里面写一个access_Token_Tool()方法//获取token publicstringacce...

获取微信Token使用缓存处理Token过期

今天我们学习微信公众号的开发啦针对于微信公众号的开发。步骤还是有些繁琐,我们需要一步一步来。1,在百度搜索微信公众平...

获取微信Token的小问题

获取access_tokenpublicstaticstringGetToken() { HttpClienthttpClient=newHttpClient(); //获取 stringrester=httpCl...
每一段路程,都是一种领悟
排名
10
文章
100
粉丝
17
评论
34
ICP备案 :渝ICP备18016597号-1
网站信息:2018-2025TNBLOG.NET
技术交流:群号656732739
联系我们:contact@tnblog.net
公网安备:50010702506256
欢迎加群交流技术