解决.NET Core企业微信openapi回调地址请求不通过的问题

Onida ·
更新时间:2024-09-20
· 141 次阅读

1.问题截图

 2.测试回调模式成功

测试回调模式地址https://open.work.weixin.qq.com/wwopen/devtool/interface/combine,建立连接 =>  测试回调模式

3.解决

测试回调成功,但是发现返回结果带了引号,可能是导致回调不成功原因。下面代码为错误示范。

[HttpGet, Route("callback/interAspect")] public IActionResult ReveiceMsg(string msg_signature,string timestamp,string nonce,string echostr) { //验证 WXBizMsgCrypt wxcpt = new WXBizMsgCrypt(AppSetting.Configuration["Wx:CallBackToken"] , AppSetting.Configuration["Wx:EncodingAESKey"] , AppSetting.Configuration["Wx:corpid"]); int ret = 0; string sEchoStr = ""; ret = wxcpt.VerifyURL(msg_signature, timestamp, nonce, echostr, ref sEchoStr); if (ret != 0) { return Json(null); } return Json(sEchoStr); }

返回值调整为ContentResult 或者string 后测试成功。

[HttpGet, Route("callback/interAspect")] public ContentResult ReveiceMsg(string msg_signature,string timestamp,string nonce,string echostr) { //验证 WXBizMsgCrypt wxcpt = new WXBizMsgCrypt(AppSetting.Configuration["Wx:CallBackToken"] , AppSetting.Configuration["Wx:EncodingAESKey"] , AppSetting.Configuration["Wx:corpid"]); int ret = 0; string sEchoStr = ""; ret = wxcpt.VerifyURL(msg_signature, timestamp, nonce, echostr, ref sEchoStr); if (ret != 0) { return Content(null); } return Content(sEchoStr); }

最后成功保存

服务端加解密库: https://developer.work.weixin.qq.com/tool#/tab/invoke/source



net .NET 地址 core

需要 登录 后方可回复, 如果你还没有账号请 注册新账号