微信验证代码

public partial class Weixin : System.Web.UI.Page
    {
        private string Token = "weixin";        //与那边填写的token一致

        protected void Page_Load(object sender, EventArgs e)
        {
            if (Request.HttpMethod.ToLower() == "post")
            {
                ResMsg();
            }
            else
            {
                Valid();
            }
        }

        /// <summary>
        /// 验证微信签名
        /// </summary>
        /// * 将token、timestamp、nonce三个参数进行字典序排序
        /// * 将三个参数字符串拼接成一个字符串进行sha1加密
        /// * 开发者获得加密后的字符串可与signature对比,标识该请求来源于微信。
        /// <returns></returns>
        private bool CheckSignature()
        {
            string signature = Request.QueryString["signature"];
            string timestamp = Request.QueryString["timestamp"];
            string nonce = Request.QueryString["nonce"];
            string[] ArrTmp = { Token, timestamp, nonce };
            Array.Sort(ArrTmp);     //字典排序
            string tmpStr = string.Join("", ArrTmp);
            tmpStr = FormsAuthentication.HashPasswordForStoringInConfigFile(tmpStr, "SHA1");
            tmpStr = tmpStr.ToLower();
            if (tmpStr == signature)
            {
                return true;
            }
            else
            {
                return false;
            }
        }

        private void Valid()
        {
            string echoStr = Request.QueryString["echoStr"];
            if (CheckSignature())
            {
                if (!string.IsNullOrEmpty(echoStr))
                {
                    Response.Write(echoStr);
                    Response.End();
                }
            }
        }
    }
时间: 2024-11-05 02:32:56

微信验证代码的相关文章

微信验证以及登录流程

前言: 现在大多数网站项目都支持微信登录,付款,以及支付宝登录付款,这种方式也是能够让用户很快速便捷的注册本网站的账号,进行登录,以及后续的操作.相信小伙伴们看完之后,会对怎么与微信或者支付宝服务器打交道有很深的理解,就当做是一个敲门砖吧.那么本篇主要针对微信的验证登录来打开通往微信服务器的大门,下一篇会主要讲解一下支付宝付款验证对接. 本篇为原创,转载请标出处:http://www.cnblogs.com/gudu1/p/8087130.html 下面我会使用大量的代码,代码中添加完整的注释来

微信公众号开发(一)微信验证开发者服务器接口

微信验证开发者服务器接口 微信验证开发者服务器接口 如图所示,开发者可填写自己服务器的验证token的接口地址,以及自定义的token(博主申请的测试号,使用natapp来进行内网穿透) 目的:帮助微信服务器和开发者服务器互相识别,以防恶意攻击 流程图如下(不知道博客园怎么显示md流程图,有知道的仁兄告知):(取自微信公众平台技术文档) st=>start: 开启服务 ipop1=>inputoutput: 接收到数据[不确定是谁发来的] op1=>operation: 尝试提取出sig

微信分享代码,附带教程

app微信分享代码,附带教程: 网站地址:http://youtui.mobi/ 源码下载地址:http://youtui.mobi/download/index.htm 教程地址:http://youtui.mobi/doc/index.htm 案例地址:http://youtui.mobi/news/news-youtui.htm 微信分享代码,附带教程,布布扣,bubuko.com

手机号码和电话号码合法性验证代码

手机号码和电话号码合法性验证代码: 在某些网站电话号码和手机号码都是必填的,或者说需要填写其中的一项,为了增强网站的真实性也提高用户体验,一般需要进行进行格式合法性验证,下面是摘自网络上的一段验证代码供大家参考之用,希望能够给大家带来一定的帮助. 代码如下: function Checkreg(){ //验证电话号码手机号码,包含153,159号段 if(document.form.phone.value==""&&document.form.UserMobile.va

微信验证

public class WXverifyController : Controller { public ActionResult WXverify() { Load(); return View(); } const string Token = "Aa123456";//你的token protected void Load() { string postStr = ""; if (Request.HttpMethod.ToLower() == "p

js 常用正则表达式表单验证代码

js 常用正则表达式表单验证代码 js 常用正则表达式表单验证代码,以后大家就可以直接使用了. 正则表达式使用详解 简介 简单的说,正则表达式是一种可以用于模式匹配和替换的强有力的工具.其作用如下:测试字符串的某个模式.例如,可以对一个输入字符串进行测试,看在该字符串是否存在一个电话号码模式或一个信用卡号码模式.这称为数据有效性验证.替换文本.可以在文档中使用一个正则表达式来标识特定文字,然后可以全部将其删除,或者替换为别的文字.根据模式匹配从字符串中提取一个子字符串.可以用来在文本或输入字段中

谷歌验证代码规范

谷歌验证代码规范

js验证网址等Javascript常见验证代码合集

发一个利用js验证网址是否正确,email格式是否正确,是否为数字及数字的范围,密码或字符长度及是否相等及要求的最小字符串长度,输入是否为空等Javascript常见验证代码合集,用的上的朋友可以拿去了自行添加整理. 关键的JavaScript代码函数: 查看代码 打印 001 /** 002 * 数据验证框架.增加了对id字段检查出错时,直接在对应后面添加一< span>元素来显示错误信息. 003 * 004 * @author www.phpernote.com 005 * @versi

Shiro权限验证代码记录,正确找到shiro框架在什么地方做了权限识别

权限验证方式的验证代码: org.apache.shiro.web.servlet.AdviceFilter这个类是所有shiro框架提供的默认权限验证实例类的父类 验证代码: public void doFilterInternal(ServletRequest request, ServletResponse response, FilterChain chain) throws ServletException, IOException { Exception exception = nu