嗨,我在代码中重新创建x集线器签名时遇到了问题。下面是他们在官方文档中说的话:
HTTP请求将包含一个具有post有效负载的SHA1签名的X签名头。签名使用密钥哈希消息身份验证代码(HMAC)计算,其中密钥是应用程序的秘密。然后,签名以sha1=作为前缀。回调端点可以验证此签名以验证有效负载的完整性和来源。 请注意,计算是在有效负载的原始转义unicode版本上进行的,其大小写十六进制数字较低。例如,字符串将转义到\u00e4\u00f6\u00e5。计算还转义到/ to /、< to \u003C、%到\u 0025和@ to \0040。如果您只是根据解码的字节进行计算,您将得到一个不同的签名。
我正在为Messenger平台创建Web钩子。当我传递dynamic时,每条消息都会被捕获,但是后来我切换了场景,现在我在模型中捕获http请求,使用StreamReader,我定位于0,但是当我这样做时,每2/10条消息就会被捕获。与Hmac编码的代码是相同的,如果有需要,我也会张贴。
我用的是.Net Core2。
发布于 2021-06-01 06:08:48
所以我这样做了,然后使用https://json2csharp.com/封装了模型中的有效负载。
但我认为最好的方式是动态类型。
https://stackoverflow.com/questions/67699684
复制相似问题