微信企業號,回撥模式開通.net
阿新 • • 發佈:2019-02-18
企業號每個應用有普通模式和回撥模式兩種,普通模式直接開啟網頁,回撥模式可設定應用底部選單項、可增加互動開發、可把客戶端的操作事件傳給企業伺服器,企業伺服器做響應開發。
開通回撥模式,首先需要通過url的回撥驗證,那麼進入應用後臺設定項,設定好url、token、aes加密偏移量,然後,使用如下程式碼:
public class Auth : IHttpHandler { const string sToken = "111"; //應用配置中隨機生成的Token const string sCorpID = "222"; //企業號的CorpID const string sEncodingAESKey = "333"; //應用配置中隨機生成的EncodingAESKey pub.WXBizMsgCrypt wxcpt = new pub.WXBizMsgCrypt(sToken, sEncodingAESKey, sCorpID); public void ProcessRequest(HttpContext context) { if (HttpContext.Current.Request.HttpMethod.ToUpper() == "GET") { UrlAuth(); } else { } } private void UrlAuth() { //接收企業號回撥資訊 string sVerifyMsgSig = pub.DNTRequest.GetQueryString("msg_signature"); string sVerifyTimeStamp = pub.DNTRequest.GetQueryString("timestamp"); string sVerifyNonce = pub.DNTRequest.GetQueryString("nonce"); string sVerifyEchoStr = pub.DNTRequest.GetQueryString("echostr"); sVerifyEchoStr = sVerifyEchoStr.Replace(" ", "+"); int ret = 0; string sEchoStr = ""; ret = wxcpt.VerifyURL(sVerifyMsgSig, sVerifyTimeStamp, sVerifyNonce, sVerifyEchoStr, ref sEchoStr); if (ret != 0) { return; } HttpContext.Current.Response.Write(sEchoStr); HttpContext.Current.Response.End(); } public bool IsReusable { get { return false; } } }