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

使用Python Requests调用Discord API发消息失效,求助排查

排查Discord消息发送工具失效问题

针对你基于Replit制作的Discord消息发送工具失效问题,结合代码和Discord机制变更的可能性,给出以下排查方向与修复建议:

1. 先定位具体错误:打印完整响应信息

当前代码仅通过res.ok判断结果,未输出关键错误细节,这是排查核心。修改循环内代码,打印状态码和响应内容:

for i in range(int(repeatvalue)):
  res = requests.post(link, json=payload, headers=header)
  if res.ok:
    print(f'\x1b[34msuccessfully sent "{message}" to server! ')
  else:
    # 输出错误详情用于定位问题
    print(f'\x1b[31mFailed with status code: {res.status_code}')
    print(f'Error response: {res.text}')
  sleep(float(interval))

常见错误码对应原因:

  • 401 Unauthorized:Token无效、过期或格式错误(用户Token无需加Bot 前缀)
  • 429 Too Many Requests:速率超限,需增大发送间隔
  • 403 Forbidden:账号被风控、频道权限不足,或Discord检测到非官方客户端请求
  • 404 Not Found:API链接错误(如频道ID有误、API版本过时)

2. 调整API版本与请求头

  • API版本升级:你当前使用v9版本API,Discord已主推v10,建议将链接中的v9替换为v10,旧版本API可能被逐步限制访问。
  • 补充User-Agent请求头:Discord现在对非官方客户端的User-Agent字段有严格校验,缺失会被拦截。更新请求头:
header = {
  'authorization': token,
  'content-type': 'application/json',
  'User-Agent': 'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/118.0.0.0 Safari/537.36'
}

3. 验证Token与运行环境

  • 确认Token格式:用户Token是一串无前缀的纯字符串,不要混入Bot 或Bearer 等标识。
  • 排除Replit环境问题:Replit的公共IP可能被Discord加入黑名单,可尝试在本地运行代码,验证是否是环境导致的请求拦截。
  • 检查账号状态:确认Discord账号无风控提示、无需二次验证,且未因异地登录导致Token失效。

4. 合规性提醒

Discord服务条款明确禁止使用用户Token进行自动化消息发送(非官方客户端场景),这类工具极易触发账号封禁。后续建议使用官方Bot Token,通过OAuth2授权方式实现消息发送功能。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.07.12 22:05:21