如何使用pycord在Discord用户个人资料中创建应用?
用Pycord实现用户个人资料的应用关联(对应你截图的展示效果)
首先明确:Pycord是Discord机器人开发库,没法直接在用户个人资料里“创建应用”,但可以通过Discord的OAuth2授权流程,让用户把你的机器人/应用关联到他们的个人资料,这样就能在个人资料的「应用」标签下显示出来(就是你截图里的效果)。下面是具体操作步骤:
1. 先在Discord开发者平台配置授权信息
- 登录Discord开发者平台,打开你的应用页面
- 左侧菜单选「OAuth2」→「URL Generator」
- 勾选scopes里的
identify(获取用户基础信息,足够让应用显示在个人资料里),如果需要管理用户的应用连接再勾选connections - 生成授权URL,复制好备用
2. 用Pycord写机器人命令触发授权
import discord from discord.ext import commands # 初始化机器人,按需开启intents bot = commands.Bot(command_prefix="!", intents=discord.Intents.default()) @bot.command(name="绑定应用") async def bind_app(ctx): # 替换成你自己生成的OAuth2授权链接 auth_link = "你的授权URL" embed = discord.Embed(title="绑定应用到个人资料", description=f"点击下面的链接完成授权,之后你的个人资料就会显示这个应用啦:\n[立即授权]({auth_link})") await ctx.send(embed=embed) # 运行机器人,替换成你的Token bot.run("你的机器人Token")
3. 可选:验证用户绑定状态(需搭个简单web服务)
如果要确认用户有没有完成绑定,得搞个web服务接收Discord的回调:
- 在开发者平台的OAuth2页面,把「Redirects」设置成你的web服务地址
- 用户授权后,Discord会把授权码发到你的回调地址,用这个码换用户的access token,就能验证绑定状态了(这部分不属于Pycord的功能,得单独写web服务,比如用Flask)
注意点
- 用户个人资料里的应用展示,是Discord自动添加的,只要用户通过OAuth2授权了你的应用,就会显示,不是Pycord直接创建的
- 记得在开发者平台给你的应用填好名称和图标,这些会直接显示在用户的个人资料应用列表里
- 权限别过度申请,只拿必要的,不然用户会反感
内容的提问来源于stack exchange,提问作者Julien Aleksandrowicz
相关产品推荐
相关产品推荐

