You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何验证Weavy Webhook签名?签名验证代码计算错误排查

Weavy Webhook签名验证失败的问题修复

你的代码核心问题是哈希字节的编码方式错误:

  • Weavy发送的签名是基于HMACSHA256哈希的Base64编码字符串,但你直接把哈希二进制字节转成了UTF8字符串,这会导致字符串不匹配。

修改后的验证代码:

public static bool Verify(string signature, string body, string secret)
{
    using (var hmac = new HMACSHA256(Encoding.UTF8.GetBytes(secret)))
    {
        var hashBytes = hmac.ComputeHash(Encoding.UTF8.GetBytes(body));
        var computedSignature = Convert.ToBase64String(hashBytes);
        return computedSignature.Equals(signature);
    }
}

额外注意事项:

  • 确保接收请求时没有修改请求体(比如自动解析后重新序列化,可能会改变空格、换行或JSON结构),必须使用原始的请求体字节流计算哈希。
  • 确认签名头部的取值正确,要确保你获取的是Weavy发送的完整签名值。

内容的提问来源于stack exchange,提问作者anderssonola

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.02 13:55:40