我正在尝试使用.Facebook developer docs中的步骤验证whatsappwebhooks中webhook有效载荷的内容,
我不明白这是什么意思
请注意,我们使用有效载荷的转义unicode版本(小写十六进制数字)生成签名。如果你只是根据解码的字节进行计算,你会得到一个不同的签名。例如,字符串äöå应转义为\u00e4\u00f6\u00e 5。
这就是为什么我在比较哈希值时总是得到错误,我想在php/laravel中得到它。
有时我试着用
$knownSignature = (new UnicodeString($request->getContent()))->normalize(UnicodeString::NFKC);
和
$knownSignature = Str::ascii($request->getContent());
但仍然不匹配。当我试图转换äöåit仍然输出\u00e4\u00f6\u00e 5时发生的事件
这是Symfoni和Laravel的文档,用于转义unicode字符串
1条答案
按热度按时间iszxjhcz1#
我做的就像@CBroe说的那样,它在我之前的函数中不起作用,但当我这样做时,它就起作用了
就像@CBroe说的,你需要散列原始请求