Discord.js v13机器人删除媒体上传失败问题求助
问题描述
我基于Discord.js v13开发了一款Discord机器人,功能是将服务器内被删除的图片/视频上传至另一服务器的日志频道。该机器人此前运行正常,但自5月23日起,多数图片或视频上传失败(截图显示上传错误提示),并非所有文件都会出现此问题。我在测试机器人中运行相同代码,也遇到了同样的问题。想知道故障原因是什么?或是Discord是否对附件处理机制做出了变更?
可能原因及排查方向
- Discord API 机制变更:Discord在5月下旬大概率调整了附件相关规则,比如:
- 删除消息的附件临时URL有效期缩短:之前删除消息后附件链接能留存较长时间供机器人抓取,现在可能刚删除就快速失效,导致上传时资源不可用
- 上传限制收紧:针对机器人的单文件大小、上传频次的限制可能有调整,超出阈值就会触发上传失败
- Discord.js v13 兼容性失效:Discord.js v13早已停止官方维护,当Discord API更新后,旧版本库无法适配新的附件处理逻辑,进而引发上传故障
- CDN 网络波动:Discord的CDN节点出现临时故障,导致机器人获取被删消息的附件资源时超时或失败,最终无法完成上传
解决建议
- 查看Discord官方的开发者公告或API变更日志,确认5月23日前后是否有附件上传相关的更新内容
- 尝试将机器人升级到Discord.js v14或更高版本,验证上传功能是否恢复正常
- 在代码中添加错误捕获,打印上传失败的具体错误信息(比如
error.message),根据提示精准定位问题(是链接失效、权限不足还是大小超限) - 绕过Discord.js,直接调用Discord的附件上传API测试,排除库本身的问题
内容的提问来源于stack exchange,提问作者Bunny X
相关产品推荐
相关产品推荐

