介绍
当普通微信用户向公众账号发消息时,微信服务器将POST消息的
代码实现
1、接收参数。
var postModel = GetPostModel(request);
2、验证签名。
if (!CheckSignature.Check(postModel.Signature, postModel.Timestamp, postModel.Nonce, Token)) { return new HttpResponseMessage { Content = new StringContent(“参数错误!”) }; }
3、数据处理。
[HttpPost] [ActionName(“CallBack”)] public HttpResponseMessage HandleMsgFromWeChat(HttpRequestMessage request) { try { var postModel = GetPostModel(request); if (!CheckSignature.Check(postModel.Signature, postModel.Timestamp, postModel.Nonce, Token)) { return new HttpResponseMessage { Content = new StringContent(“参数错误!”) }; } string request.Content.ReadAsStringAsync().Result; string domain = BqoolWebSite.WebSiteMapping[BqoolWebSiteType.BigCRMWebService][CommonSetting.GetEnvironmentMode()]; string url = domain + “/api/WeChat/Process”; var data = new Process= “WeChat”, UpdateUser = “WeChat”, Date = DateTime.UtcNow.ToUnixTimestamp(), Action = BaseRequestParam.ActionType.Add, = “WeChat Process”); var result = HttpTools.EncryptPost