【发布时间】:2016-10-04 04:20:00
【问题描述】:
我正在尝试制作一个可以加入其他服务器的不和谐机器人(带有 bot 标签)。
如果我可以为其设置重定向 URI,我将能够做到这一点。我已经设置了机器人帐户,并且已经可以使用它(加入服务器除外)。
我想知道如何为 discord OAuth2 设置重定向 URI?
【问题讨论】:
-
你找到答案了吗?
我正在尝试制作一个可以加入其他服务器的不和谐机器人(带有 bot 标签)。
如果我可以为其设置重定向 URI,我将能够做到这一点。我已经设置了机器人帐户,并且已经可以使用它(加入服务器除外)。
我想知道如何为 discord OAuth2 设置重定向 URI?
【问题讨论】:
您需要有自己的网络服务器和一些路径来制作您的重定向网址。例如,如果您拥有 example.com,则可以将 example.com/discord 作为客户端通过 Discord 登录后重定向到的 URL。
【讨论】:
要将您的机器人添加到服务器,您需要使用您的客户端 ID 创建一个重定向网址
只需将客户 ID 替换为您的客户 ID:
https://discordapp.com/oauth2/authorize?&client_id=[CLIENTID]&scope=bot
就是这样!现在你只需要点击它!
【讨论】:
我假设您正在尝试使用 guilds.join 范围,它会告诉您提供重定向 URI。我认为您将 guilds.join 误认为是机器人,因为它实际上是让您的应用程序为客户端加入服务器的范围(您可以通过链接 https://discordapp.com/oauth2/authorize?&client_id=[CLIENTID]&scope=guilds.join 看到这一点,并将 [CLIENTID] 替换为应用程序客户端 ID )。
这意味着具有 guilds.join 范围的链接将位于您拥有的网站上,一旦用户同意或拒绝,授权页面会将客户端重定向回该网站。
此外,您的机器人实际上不能仅仅因为它的制作方式而自行加入服务器。机器人必须通过 OAuth 手动授权。如果您希望机器人加入服务器本身,它可以使用邀请链接来获取服务器并 DM 服务器所有者(可以使用属性找到)机器人的 OAuth 链接。由于机器人不在它要加入的服务器中,因此您需要通过其余客户端执行此方法。如果你不介意像其他机器人那样做,你可以让机器人像其他机器人一样使用!invite 之类的命令提供加入链接。
编辑:如果您想了解有关使用 guilds.join 的更多信息,文档链接在这里:https://discordapp.com/developers/docs/resources/guild#add-guild-member
【讨论】: