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

Bot Framework V4 NodeJS:Twilio WhatsApp Adapter签名验证失败求助

Twilio WhatsApp Adapter 请求验证失败问题(基于Bot Framework V4 NodeJS)

我基于Bot Framework V4 NodeJS,使用Twilio WhatsApp Adapter将Twilio作为聊天机器人渠道。目前WhatsApp发送给Twilio的消息可以正常作为请求送达聊天机器人,但机器人内的请求验证持续失败。

代码示例

const { TwilioWhatsAppAdapter } = require('@botbuildercommunity/adapter-twilio-whatsapp');
const whatsAppAdapter = new TwilioWhatsAppAdapter({
    accountSid: '<Sid from Twilio console >', 
    authToken: '<Auth token from Twilio console>', 
    phoneNumber: '<phone number from Whatsapp Sandbox settings in Twilio>',
    endpointUrl: 'url from Sandbox setting in Twilio' 
});

适配器验证相关代码

适配器依赖Twilio模块,但Twilio.validateRequest始终返回false,相关验证代码如下:

const signature = req.headers['x-twilio-signature'] || req.headers['X-Twilio-Signature'];
const authToken = this.settings.authToken;
const requestUrl = this.settings.endpointUrl;
const message = await this.retrieveBody(req);
return Twilio.validateRequest(authToken, signature, requestUrl, message);

已排查信息

  • 使用的endpointUrl参数值:https://mybot.azurewebsites.net/api/whatsapp/messages
  • 尝试过的phoneNumber格式均未成功:
    • whatsapp:+1XXXXXXXXXX
    • whatsapp:1XXXXXXXXXX
    • +1XXXXXXXXXX
    • 1XXXXXXXXXX
  • 已确认的排查点:
    • 请求中存在有效的x-twilio-signature请求头
    • 核对过Twilio.validateRequest所需的authToken、signature、requestUrl及message参数,参数值看似无问题,但方法仍返回false

希望能获得相关指导,否则我将尝试调试该模块,感谢。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.11 15:25:21