public void ProcessRequest(HttpContext context) { if (string.IsNullOrEmpty(context.Request.QueryString["echostr"])) { context.Response.End(); } #region --------验证URL WXBizMsgCrypt wxcpt = new WXBizMsgCrypt(WXToken, sEncodingAESKey, sCorpID); string sVerifyMsgSig = HttpUtility.UrlDecode(context.Request.QueryString["msg_signature"].ToString()); string sVerifyTimeStamp = HttpUtility.UrlDecode(context.Request.QueryString["timestamp"].ToString()); string sVerifyNonce = HttpUtility.UrlDecode(context.Request.QueryString["nonce"].ToString()); string sVerifyEchoStr = HttpUtility.UrlDecode(context.Request.QueryString["echostr"].ToString()); int ret = 0; string sEchoStr = ""; ret = wxcpt.VerifyURL(sVerifyMsgSig, sVerifyTimeStamp, sVerifyNonce, sVerifyEchoStr, ref sEchoStr); Log.WriteLog("\n" + sEchoStr); if (ret != 0) { Log.WriteLog("ERR: VerifyURL fail, ret: " + ret); return; } else { context.Response.Write(sEchoStr); context.Response.End(); } //return; #endregion if (WeiXin.CheckSignature(sVerifyMsgSig, sVerifyTimeStamp, sVerifyNonce, WXToken)) { try { var replyMsg = WeiXin.ReplyMsg().GetXML(); //这里可以记录日志 Log.WriteLog(replyMsg); context.Response.Write(replyMsg); } catch (Exception exp) { //记录异常 Log.WriteLog("error"); } } else { context.Response.Write(""); } }