DotNetCore.SKIT.FlurlHttpCl.../docs/WechatApi/Advanced_EventDataDeserialization.md

22 lines
906 B
Markdown
Raw Normal View History

2021-07-27 18:37:38 +08:00
## 如何解析回调通知事件?
2021-05-28 19:27:50 +08:00
---
2021-06-07 00:32:04 +08:00
你可根据官方文档的规则利用本库提供的 `WxBizMsgCryptor` 工具类自行解密回调通知事件的敏感信息。
对于解密后得到的原始数据,本库封装了直接解析成事件模型的扩展方法,下面给出一个示例:
2021-05-28 19:27:50 +08:00
```csharp
/* 如果是 JSON 格式的通知内容 */
2021-06-07 00:32:04 +08:00
string callbackJson = "{ ... }";
2021-05-28 19:27:50 +08:00
var callbackModel = client.DeserializeEventFromJson<Events.WxaMediaCheckEvent>(callbackJson);
/* 如果是 XML 格式的通知内容 */
2021-06-07 00:32:04 +08:00
string callbackXml = "<xml> ... </xml>";
2021-05-28 19:27:50 +08:00
var callbackModel = client.DeserializeEventFromXml<Events.TextMessageEvent>(callbackXml);
```
完整的回调通知模型定义可以参考项目目录下的 _src/SKIT.FlurlHttpClient.Wechat.Api/Events_ 目录。
2021-06-07 00:32:04 +08:00
需要注意的是,如果在微信公众平台后台配置中选择了明文模式,则无需对数据进行解密。