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

TinyMCE RTC报No keys were available to verify the JWT错误求解

错误原因:No keys were available to verify the JWT

这个错误的本质是TinyMCE的实时协作服务端,找不到可以验证你生成的JWT签名的公钥:

  • 你当前用RS256非对称算法生成JWT,签名用的是你本地的私钥,TinyMCE服务端必须持有和该私钥配对的公钥,才能完成签名校验。你没有把对应公钥配置到TinyMCE开发者后台的RTC配置项中,服务端无可用密钥验签就会抛出该错误。
  • 部分场景下如果你的JWT缺少必填的签发者(iss)字段,TinyMCE服务端无法匹配到对应用户的公钥,也会触发该报错。

报错截图:
报错截图

修复步骤
  • 登录TinyMCE开发者后台,进入你的应用的实时协作功能配置页:
    1. 可以直接在后台生成专属RSA密钥对,下载生成的私钥替换你现有代码里的privateKey变量,后台会自动存储对应的公钥
    2. 也可以把你自己生成的密钥对的公钥(注意是公钥,不要传私钥)上传到对应配置项,确保和你代码里用来签名的私钥是配对的
  • 检查你的JWT payload补充必填字段,示例正确的payload格式如下:
const payload = {
  sub: 'userid1', // 用户唯一ID
  exp: Math.floor(Date.now() / 1000) + (60 * 10), // 过期时间
  iss: '你的TinyMCE账户/应用ID' // 必填,TinyMCE服务端用这个字段匹配对应的公钥
};
  • 确认你签名用的算法和TinyMCE后台配置的验签算法一致,你当前用的RS256属于非对称算法,不要和HS256这类对称算法混用,HS256需要在后台配置对称密钥而非公钥。
  • 额外修复你现有代码的潜在问题:getEncryptionKey接口中引用的key变量未定义,会抛出500错误,需要提前定义该变量。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.09.26 15:54:05