问题标签 [nuxt-auth]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
272 浏览

nuxt.js - Nuxt Auth 策略不获取身份验证令牌

我有以下身份验证策略:

奇怪的是,这个策略自己完成了所有的身份验证,而不需要访问我的后端!responseType 不应该codeendpoints.token获取令牌吗?

我的登录功能如下所示:

有趣的是,如果我没有在这里传递参数,谷歌会给我一个client_id缺失的错误。

0 投票
1 回答
89 浏览

nuxt.js - 如何使用 nuxt/auth-next 与 oauth2 交换访问令牌的代码

我正在使用"@nuxtjs/auth-next": "5.0.0-1618898588.9655d0e"身份验证,我想使用它来集成谷歌。我在 nuxt.config.js 中设置了以下代码

并在登录页面

在我单击使用 google 登录后,发出 google 请求并将其重定向到 redirectUri,查询附加为http://localhost:3000/account/login?state=3OyMNy2ODj&code=4%2F0AY0e-g6YkRJFyVCVxo8Ph2-WXpTYjKbxyuAE3r6F1PB_pt8W9QlRgdtxpEeKxfzYvX6g&scope=email%20profile%20openid%20https%3A%2F%2Fwww.googleapis.com%2Fauth%2Fuserinfo.profile%20https%3A%2F%2Fwww.googleapis.com%2Fauth%2Fuserinfo.email&authuser=0&prompt=consent

现在我需要再次向谷歌请求访问令牌,但我不知道该怎么做。

0 投票
1 回答
277 浏览

nuxt.js - 在 Nuxt 中手动验证用户

如果我有一个 url: <host>/login/?token=<valid_backend_token>,那么我的后端生成valid_backend_token身份验证令牌在哪里。使用这个令牌,我几乎可以为我的用例做任何我想做的事情(包括获取用户配置文件等)。有没有办法可以使用此令牌在 Nuxt 中对用户进行身份验证?

目前,我尝试过这样的事情:

当然,这不会验证我的用户(因为$auth.loggedIn是假的)。$auth.user当然设置,我可以访问配置文件页面(如果我禁用auth中间件)。除了$auth.loggedIn错误之外,我$this.axios.get/put/etc.还会抛出错误(即使在我的情况下不需要刷新令牌并且我已经设置了它):

ExpiredAuthSessionError:令牌和刷新令牌都已过期。您的请求已中止。

我怎样才能使这个身份验证工作?

0 投票
1 回答
93 浏览

javascript - 如何在 nuxt auth 模块中发送 refreshToken 和 token?

这是我的配置:

在刷新端点对象中,我想在数据对象中发送 refreshToken 和令牌,我该如何实现呢?我无法修改后端 api。文档说端点只是扩展了 axios 选项,但是我如何访问这些数据中的 refreshToken 和令牌?同样在请求之后,我需要设置新的刷新和 jwtToken。

0 投票
1 回答
257 浏览

nuxt.js - 保存 oAuth 用户 - Nuxt auth - github 策略

我正在尝试将登录到我用户数据库的 GitHub OAuth 用户保存。我正在使用 Nuxt.js 身份验证模块来实现该功能。

`Nuxt.config.js 中的身份验证设置

Login.vue 页面

验证插件文件

现在,当我单击按钮使用 GitHub 登录(Login.vue)时,该模块成功将从 GitHub 接收到的访问令牌设置为本地存储,并将用户设置为状态。但是正如您在 loginWith('github')context.$auth.user未定义后的代码(auth.js 插件文件)中看到的那样。现在我的问题是我如何访问用户信息,以便我可以将该信息转发到我的 api 服务器以将用户存储在数据库中。

0 投票
1 回答
334 浏览

vue.js - nuxt/auth 的问题

对于身份验证,我确实使用nuxt-auth,当登录成功时,我想使用 重定向到主页this.$router.push('/'),然后我得到一个类似于空白页面的响应,并带有以下消息

2021

在此处输入图像描述, 在此处输入图像描述

// 用于登录

存储 vuex index.js

布局 default.vue

// 验证 nuxt 配置

基本索引 ('/')

0 投票
0 回答
80 浏览

vue.js - 使用 nuxt/auth 和 grpc-web 连接

我在我的项目中使用grpc-web而不是。rest APInuxt.js

我想使用nuxt/authwithgrpc-webendpointsinauth config用于rest API

我该如何使用它们,如果您有其他想法,请告诉我?

0 投票
2 回答
234 浏览

node.js - Axios - 防止在外部 api 调用上发送 JWT 令牌

我正在使用 nuxt + express 构建一个全栈应用程序,我终于设法在我的前端/后端之间使用护照和 jwt 进行身份验证。

我想向我自己的 github 存储库发出额外的 api 请求以获取最新版本(以便用户获取存在更新的信息)。此请求失败,并显示“凭据错误”消息。我认为这是因为我的 jwt 令牌是随它一起发送的(我可以在请求标头中看到我的令牌)。

我的问题是,是否可以阻止 axios 仅在此调用中发送我的 JWT 令牌?首先,为了使我的请求正常工作,其次,我不希望令牌在外部请求中发送。

例子:

0 投票
2 回答
253 浏览

nuxt.js - NuxtJS auth 在注销后重定向到各种路径,如果需要的话

是否谷歌并阅读了文档但尚未找到解决方案,如果需要,请建议如何将用户注销到不同的路径。

我的场景/问题

  • 如果用户通过验证并注销,应重定向到 {domain}/login
  • 如果用户更新电话号码,应注销并重定向到 {domain}/verify 以重新验证。

试过(不工作)

我总是被重定向到 {domain}/login :-(

尝试>仍然无法正常 注销禁用重定向,nuxt.config.js如下所示。

0 投票
0 回答
755 浏览

django - Nuxt Auth 'loginWith' 功能不向 DRF 发送数据

我最近尝试将 Nuxt.js 与 Django 结合起来。Nuxt.js 有一个名为 Nuxt Auth 的模块(我使用 @nuxtjs/auth-next),它非常简单易用。

但是,当我$auth.loginWith(...)在 Django APIView 中使用时尝试获取帖子数据时遇到了问题。当我打印出来时request.POST,它返回一个空的 QueryDict。当我使用标准 DRF 表单登录时,我按预期获得了我的令牌(我使用 JWT 进行身份验证)。

我首先认为我在 Nuxt.js 前端做错了什么,所以我在 GitHub 上克隆了一些存储库,看看他们是如何做到的(tickstudiuammezie)。然后我尝试将他们的前端与我的后端结合起来。我还在YouTube上看了一个教程。

仍然是同样的问题...这就是为什么我认为这是 Nuxt + Django 特有的问题,因为否则,其他 repos 会起作用,对吧?或者,也许我只是每次都做错了……

这是我使用标准 DRF 表单登录时得到的结果:

这是我在 Django 中的登录 API:

这是控制台中的输出,当我尝试使用 Nuxt 登录时:

这是我在 Nuxt 中的登录表单脚本:

这是我nuxt.config.js文件的一部分:

我使用 Django 3.2.3、DRF 3.12.4、Nuxt.js 2.15.3 和 Nuxt Auth 5.0.0-1622309801.87126e3。

编辑:

感谢 Kissu,当我尝试使用 Nuxt 登录时,我发现 CSRF Token 丢失了。请求有效载荷:

这是我使用标准 DRF 表单成功登录时的请求负载。我发现它使用multipart/formdata而不是application/json标准。当我使用后者时,它不起作用。

我将我的 axios 配置编辑为:

它仍然不起作用,但我现在得到一个400 Bad Request错误而不是 401。在标题中,我可以找到这个:X-CSRFToken: csrftoken。这意味着没有正确插入 csrf 令牌。但是,它确实可以正确插入到普通的 Vue 应用程序中。

View好消息:当我继承标准 Django而不是 DRFGenericAPIView和 Vue 而不是 Nuxt时,我发现一切正常。

我现在的问题是:如何在 Nuxt 应用程序中设置 csrf 令牌,为什么它不能application/json在 DRF 中使用?我在互联网上没有发现任何对我有用的东西。