官方文档:
第一步:填写服务器配置直接安装要求填写即可:


第二步:验证消息的确来自微信服务器后台进行校验成为开发者,校验步骤没有什么难点,token就是第一步中填写的Token(令牌),按照文档来即可,但是注意这里有一个坑:

当初以为echostr是一个string类型,后来通过写日志记录参数的方法发现echostr其实是一个long类型
附上后台代码:
[HttpGet]publiclongGetTest(stringsignature,stringtimestamp,stringnonce,longechostr){//可以记录日志查看微信后台传递的参数stringtoken="gggggg1";Dictionarystring,stringdic=newDictionarystring,string();dic.Add("token",token);dic.Add("timestamp",timestamp);dic.Add("nonce",nonce);varsortedDict=dic.OrderBy(s=s.Value);varconbineStr="";foreach(varsinsortedDict){conbineStr=conbineStr+s.Value;}//sha1加密stringsecret=SHA1(conbineStr,Encoding.UTF8);//可以记录日志检查加密后的参数是否与signature一致if(secret==signature)returnechostr;elsereturn-1;}///summary///SHA1加密////summary///paramname="content"/param///paramname="encode"/param///returns/returnspublicstaticstringSHA1(stringcontent,Encodingencode){try{SHA1sha1=newSHA1CryptoServiceProvider();byte[]bytes_in=encode.GetBytes(content);byte[]bytes_out=sha1.ComputeHash(bytes_in);sha1.Dispose();stringresult=BitConverter.ToString(bytes_out);result=result.Replace("-","");returnresult.ToLower();}catch(Exceptionex){thrownewException("SHA1加密出错:"+ex.Message);}}结论:当你确认你的代码逻辑没有问题后你就要回头去检查有什么细节遗漏了













