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

集成AWS Connect Chat遇No JWT detected错误求助

问题排查与修复建议

1. 前端Fetch请求未正确解析响应数据

你当前的前端代码里,直接用res?.data是错误的——fetch API返回的Response对象并没有data属性(这是Axios这类封装库的写法)。必须先调用.json()或.text()方法解析响应内容,才能拿到实际的令牌字符串:

amazon_connect('authenticate', function(callback) {
  window.fetch('/support/token')
    .then(res => res.json()) // 或 res.text(),取决于后端返回的是JSON字符串还是纯文本
    .then(token => {
      callback(token);
    })
    .catch(err => console.error('获取令牌失败:', err));
});

2. 后端令牌生成时的冗余编码操作

JWT本身的结构就是由Base64URL编码的Header、Payload和Signature组成的,不需要再额外对生成好的JWT做一次Base64.urlsafe_encode64编码。这种二次编码会让整个令牌字符串偏离标准JWT格式,导致AWS Connect无法识别为有效JWT,直接抛出「No JWT detected」错误。

修复步骤:

  • 后端生成JWT时,直接返回JWT.encode生成的原始字符串即可,不要做额外的Base64URL编码。
  • 后端路由中也不需要再执行Base64.urlsafe_decode64解码,直接使用原始JWT进行后续验证逻辑。

验证步骤

  1. 先修复前端代码,确保能正确拿到后端返回的令牌字符串。
  2. 去掉后端的二次编码/解码步骤,返回标准JWT。
  3. 测试时可以在前端控制台打印拿到的token,确认是符合xxxxxx.yyyyyy.zzzzzz三段式结构的标准JWT格式。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.06.28 12:32:34