5
const guildMembersResponse = fetch(`http://discordapp.com/api/guilds/440494010595803136/members/278628366213709824`,
            {
              method: 'PUT',
              headers: {
                Authorization: `Bearer TOKEN`,
              },
            });
            setTimeout(() => {
                console.log(guildMembersResponse)
            }, 500);

我想使用他的用户 ID 和他在 nodejs 中的令牌将用户加入我的 Discord 服务器,但是如果我请求 Dicord api,我会收到错误消息:

Promise {
 Response {
  size: 0,
  timeout: 0,
  [Symbol(Body internals)]: { body: [PassThrough], disturbed: false, error: 
  null },
  [Symbol(Response internals)]:
  { url:
  'https://discordapp.com/api/guilds/440494010595803136/members/278628366213709824',
   status: 401,
   statusText: 'UNAUTHORIZED',
   headers: [Headers] } } }

我正在使用节点获取库!

4

3 回答 3

3

我只需要将标题中的“ContentType”替换为“Content-Type”!

headers: {
  "Authorization": "Bot [botToken]",
  "Content-Type": "application/json",
}
于 2018-12-28T19:24:12.187 回答
0

您应该将用户令牌添加到正文中,如下所示:

{
  method: 'PUT',
  access_token: "Bearer TOKEN"
  headers: {
    Authorization: `Bot TOKEN`,
}

用户令牌应该是这样的:TiaRZjWv5YAp80MpTFRkhi1GhXqddB

于 2021-07-19T17:11:00.340 回答
0

401 错误意味着您没有为 oauth 链接提供正确的范围。在https://discordapp.com/developers/docs/topics/oauth2#shared-resources-oauth2-scopes上阅读有关 Discord 的 OAuth 范围的更多信息。引用文档,您将需要guilds.join范围。

此外,文档引用:

guilds.joinbot要求您将机器人帐户链接到您的应用程序。此外,为了将用户添加到公会,您的机器人必须已经属于该公会。

因此,请确保您的应用满足上述要求。

如果您已确定已按照上述步骤操作,但仍无法正常工作,则必须与我们共享 OAuth 链接以帮助您进一步调查

于 2018-12-28T17:54:22.840 回答