您好,登錄后才能下訂單哦!
這篇文章主要介紹微信開(kāi)發(fā)asp.net接入方法的示例分析,文中介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們一定要看完!
首先創(chuàng)建一個(gè)Default.aspx。在Page_Load里進(jìn)行檢驗(yàn):(MyLog是日志類(lèi),可以忽略) 關(guān)于checkSignature()就和所查到的差不多了。這里貼一下
MyLog.DebugInfo("request default.aspx"); String echoStr = Request.QueryString["echostr"]; MyLog.DebugInfo("echoStr:"+echoStr); if (this.checkSignature()) { if(!string.IsNullOrEmpty(echoStr)){ MyLog.DebugInfo("echostr:" + echoStr); Response.Write(echoStr); Response.End(); } }
最最主要的是那句Response.End(),不加這一句怎么樣都接不進(jìn)去(希望有大神告知)。 關(guān)于checkSignature()就和所查到的差不多了。這里貼一下
private bool checkSignature() { string signature = Request["signature"]; string timestamp = Request["timestamp"]; string nonce = Request["nonce"]; MyLog.DebugInfo(String.Format("signature:{0},timestamp:{1},nonce:{2}", signature, timestamp, nonce)); string token = TOKEN; string[] tmpArr = new string[] { token, timestamp, nonce }; Array.Sort(tmpArr); string tmpStr = string.Join("", tmpArr); //sha1加密 System.Security.Cryptography.SHA1 sha1 = new System.Security.Cryptography.SHA1CryptoServiceProvider(); byte[] secArr = sha1.ComputeHash(System.Text.Encoding.Default.GetBytes(tmpStr)); tmpStr = BitConverter.ToString(secArr).Replace("-", "").ToLower(); MyLog.DebugInfo(String.Format("after parse:{0}", tmpStr)); if (tmpStr == signature) { MyLog.DebugInfo("true"); return true; } else { return false; } }
這里主要是因?yàn)槟莻€(gè)Response.End()的問(wèn)題,導(dǎo)致我搞了許久,特此記錄一下,希望幫助能幫助到的人。
還有一點(diǎn)可能是因?yàn)槲⑿?a title="服務(wù)器" target="_blank" href="http://kemok4.com/">服務(wù)器的原因Token驗(yàn)證失敗,多點(diǎn)2次即可,別像我這樣只點(diǎn)一次啊?。?!
以上是“微信開(kāi)發(fā)asp.net接入方法的示例分析”這篇文章的所有內(nèi)容,感謝各位的閱讀!希望分享的內(nèi)容對(duì)大家有幫助,更多相關(guān)知識(shí),歡迎關(guān)注億速云行業(yè)資訊頻道!
免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀(guān)點(diǎn)不代表本網(wǎng)站立場(chǎng),如果涉及侵權(quán)請(qǐng)聯(lián)系站長(zhǎng)郵箱:is@yisu.com進(jìn)行舉報(bào),并提供相關(guān)證據(jù),一經(jīng)查實(shí),將立刻刪除涉嫌侵權(quán)內(nèi)容。