我有以下身份验证策略:
auth: {
strategies: {
local: {
...,
},
google: {
clientId:
"<MY CLIENT ID>",
responseType: "code",
endpoints: {
token: "http://localhost:8000/social-login/google/",
userInfo: "http://localhost:8000/auth/user/",
},
},
},
redirect: {
...
},
},
奇怪的是,这个策略自己完成了所有的身份验证,从来没有碰到我的后端! responseType code
不应该去 endpoints.token
获取令牌吗?
我的登录功能如下所示:
loginWithGoogle() {
this.$auth.loginWith("google", {
params: {
client_id:
"<MY CLIENT ID>",
},
});
},
有趣的是,如果我没有在此处传递参数,Google 会向我显示缺少 client_id
的错误。
答案 0 :(得分:1)
这是 @nuxtjs/auth
的一个问题,它是版本 <= v4.9.1
,并且作为文档 warns 它可能包含错误和未实现的功能。
使用名为 v5
的 @nuxtjs/auth-next
可以解决问题。
安装为:
yarn add --exact @nuxtjs/auth-next
然后添加到您的 nuxt.config.js
为(来自 documentation):
{
modules: [
'@nuxtjs/auth-next'
],
auth: {
// Options
}
}