如何使用next-auth获取其他范围数据?

vlju58qv  于 2022-11-29  发布在  其他
关注(0)|答案(3)|浏览(237)

我正在使用下一个身份验证和不一致的身份验证,我添加了公会到我的范围,但我不能得到公会的数据,这是怎么做到的?

const options = {
  providers: [
    Providers.Discord({
      clientId: process.env.DISCORD_CLIENT_ID,
      clientSecret: process.env.DISCORD_CLIENT_SECRET,
      scope: "identify guilds",
    }),
  ],
};
sqougxex

sqougxex1#

最新的构建允许您覆盖任何模式(深度合并,以便您只需键入希望更新的字段)。
我来这里寻找这个确切的答案,这就是我所用的:

DiscordProvider({
  clientId: process.env.DISCORD_CLIENT_ID,
  clientSecret: process.env.DISCORD_CLIENT_SECRET,
  authorization: { params: { scope: 'identify guilds' } },
}),
yrefmtwq

yrefmtwq2#

在使用Discord OAuth2时也遇到了这个问题。我在NextAuth的文档中找到了它,网址为:
https://next-auth.js.org/providers/discord#example
基本上,您可以在提供程序数组之后添加作用域作为常规选项。

import DiscordProvider from "next-auth/providers/discord";
...
providers: [
  DiscordProvider({
    clientId: process.env.DISCORD_CLIENT_ID,
    clientSecret: process.env.DISCORD_CLIENT_SECRET,
    authorization: { params: { scope: 'identify guilds' } },
  })
]
...
lvjbypge

lvjbypge3#

对于任何为不同提供商(Google、Facebook等)寻找范围的人来说,范围键不一定总是在同一个位置,所以一定要在Next-Auth网站上查看您的提供商的文档:https://next-auth.js.org/providers

相关问题