我没有实际调用过这个接口,只单纯封装了一下事件的实体模型。
能否先给我一个真实的数据(敏感字段可脱敏处理再贴上来)?我再据此给你可行的 demo。
此处可能存在不合适展示的内容,页面不予展示。您可通过相关编辑功能自查并修改。
如您确认内容无涉及 不当用语 / 纯广告导流 / 暴力 / 低俗色情 / 侵权 / 盗版 / 虚假 / 无价值内容或违法国家有关法律法规的内容,可点击提交进行申诉,我们将尽快为您处理。
接受到的stream:
<xml>
<AppId><![CDATA[wxf6c4156b9b86f89d]]></AppId>
<Encrypt><![CDATA[b9U0E6wD5UBOsgi9F6nlUChoiXAMEADV30qmAQyxGYGrz40Mzc+j6Zb1XLMSpUEMQN7iXUmVz5KiR8TW9SgLrgVCN2wb/eMbIBYpeoWoZ3uvWeKncxUumMlNN+xrKFXtqb0LXbQj88QWCQpUPakzzmvE/5CoJE+DWOFfZa+K1oa1vJKEljoykyalNuZrviPzgyF7gjS/Trr1KdPjX4dZWcsN9GGr8bkuwPqqJIe8yOEH3EAzuBoqOmHdUJ0SCJhjb1DElu9FjiG5v71khNcVpCBGeRtVTF7bXsrwPlL0oGc+wOjOP9Ub6kPhF9aWw4y9LpMR4kFoDuryl0+LifUOyb2DeCnjF4mUYxkBaiDTccmI/SDY2o4YF53Sd7jlC3C1OePQ9n6bmX58XlTfzoJWyu1EEgZXWrY9auAIe0ZAVkunWlA6ndqTewp6Sr2cd98n3QSy9A2FGu2UfKvJYz8BPg==]]></Encrypt>
</xml>
盛派sdk操作如下:
[HttpPost("/Wechat/AuthorizationCallBack")]
[AllowAnonymous]
public string AuthorizationCallBacke([FromQuery]PostModel postModel)
{
try
{
postModel.Token = component_Token;
postModel.EncodingAESKey = component_EncodingAESKey;//根据自己后台的设置保持一致
postModel.AppId = component_AppId;//根据自己后台的设置保持一致
App.HttpContext.Request.EnableBuffering();
var messageHandler = new CustomThirdPartyMessageHandler(App.HttpContext.Request.Body, postModel);//初始化
messageHandler.Execute();//执行
Log.Information("获取微信推送ticket解析后的数据:" + messageHandler.ToJson());
if (messageHandler.RequestMessage.InfoType == RequestInfoType.component_verify_ticket)
{
var vTicket = messageHandler.RequestMessage as RequestMessageComponentVerifyTicket;
var options = new DistributedCacheEntryOptions().SetSlidingExpiration(TimeSpan.FromHours(12));
_cache.SetString(CACHE_KEY_TICKET, vTicket.ComponentVerifyTicket, options);
}
}
catch (Exception ex)
{
ex.Message.LogError();
}
return "success";
}
它这个 Encrypt
的加密方式、跟公众号本身的安全模式的加密方式有区别么?我看官方给的示例代码好像是一样的。
如果是一样的,那么跟公众号的安全模式下的解析回调通知用法一样,文档见此:https://gitee.com/fudiwei/DotNetCore.SKIT.FlurlHttpClient.Wechat/blob/main/docs/WechatApi/Advanced_EventDataDeserialization.md#%E5%AE%89%E5%85%A8%E6%A8%A1%E5%BC%8F
P.S. 如果文档理解有困难可以给我留言从哪开始没看懂,可能是我文档写的不够通俗。
噢对了,如果文档里 callbackXml
那个字符串怎么在 Action 里得来的你不清楚,可以看示例项目,示例项目里有一个例子是关于这个的。
I'll close this issue. If you see other bugs about this, you can reopen it.
登录 后才可以发表评论