问题标签 [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.
authentication - 如何使用 Nuxt 和 nuxt-auth 模块验证多个 api
到目前为止,我有一个带有本地身份验证的应用程序(使用 nuxt js 的nuxt-auth)(稍后我想添加 git 和 google auth)。
现在我需要添加身份验证来调用其他服务/API(如谷歌云休息 API、支付系统、youtube API 等......)
问题是:用户只被验证一次(在登录应用程序期间)。但是这些第 3 方 API 中的每一个都有自己的验证。
如何实现多重身份验证。(我整天阅读文档和谷歌,但没有明确的答案)。
typescript - 如何访问 Record 类型变量的属性?
我正在使用 Typescript、nuxt/auth 和 nuxt/axios 开发 Nuxt.js 项目。我正在为我的 API 服务创建某种存储库。我有从后端收到的数据的 DTO。我有一个 UserDTO,它具有 API 在成功登录后发送的回复的确切架构,并且它有一个字段“id”。我想读取属性Vue.$auth.user.id
并将其作为 get 参数传递。目前我无法更改后端的逻辑以使其仅根据我的令牌进行响应。以下显示了我遇到问题的地方。
我希望我this._user
的类型是 UserDTO,它声明了一个“id”属性。但是$auth.user
是一个Record<string,unknown>
在编译时返回没有任何属性“id”的getter。
我该怎么办?
更新
我按如下方式更改它并解决了问题,但我对我的做法不满意
vue.js - 观看 nuxt-auth 令牌更改
是否有通过 watchState (当通过刷新令牌获取新令牌时)或任何其他类似方法观察令牌更改?我尝试了以下方法,但没有成功!
nuxt.js - Nuxt Auth loggedIn 状态被缓存
我遇到了 Nuxt Auth 登录状态的问题。我在通用模式下使用 Nuxt JS,并且正在使用 Nuxt Auth 进行身份验证。
当用户注销时,$auth.loggedIn 状态会在该会话中适当地解析。我在 $auth.logout() 期间没有重定向,但有条件语句可以解决所有注销状态的需求。当用户在该会话中注销时,一切都很好。
这个问题发生在我的 PWA 实例上,其中启动 URL 转到: http ://example.com/pwa 并且,在mounted() 之后,从这里重定向($router.push(redirectPage)) 到适当的位置。旁注,我尝试重定向服务器端,但无法解决补水问题,所以这似乎是一个不错的选择。
在 logout() 之后,当 PWA 打开 start_url 时,$auth.loggedIn 显示为 true,即使用户已注销。这与本地存储和 cookie 冲突,这些 cookie 对 auth 密钥都显示为 false。
当我在 Chrome 中调试它并进行硬刷新时,它会将 $auth.loggedIn 适当地解析为 false。没有硬刷新,它将显示为true。
这似乎是某种缓存问题。此外,我正在使用 Nuxt PWA 模块。我不确定这是否是缓存 vuex 存储的服务人员问题。
任何想法表示赞赏。
这是身份验证配置:
PWA 工作箱配置使用所有默认缓存值。
django-rest-framework - 带有租户子域设计 API 的 Nuxt 和 axios 配置
有谁知道我应该如何使用 django-rest-framework 和 django-tenants ( https://github.com/django-tenants/django-tenants ) 构建的多租户 API 来管理 Nuxt 和 axios 配置?
租户子域可以访问此 API:tenant1.example.com/api、tenant2.example.com/api、...(在我的开发环境中:tenant1.localhost:8000/api、tenant2.localhost:8000/api、. ..)
在我的 Nuxt 应用程序中,我想使用 @nuxtjs/axios 和 @nuxtjs/auth-next。
→ 如何代理 axios API URL 以考虑 API 子域(tenant1.example.com/api,...)?
→ 如何配置身份验证端点(tenant1.example.com/api/login,...)?
谢谢你的帮助!
nuxt.js - 注销后 Nuxt 身份验证未重定向
我刚开始在我当前的项目中使用 Nuxt。我使用 DRF 作为后端,local
使用 nuxt-auth 的身份验证策略效果非常好。但是,当我注销时,我必须刷新页面才能进入登录页面。
这是我的index.vue
:
这是我的身份验证设置:
我已经多次阅读文档,但仍然无法弄清楚为什么login/
当我单击已登录的 Log Out 按钮时我没有被重定向到index.vue
。当然,我可以写一些中间件,但我认为库默认提供选项。
vue.js - 部署 Nuxt 应用程序时如何在 Firebase Functions 中启用 Vuex
我正在尝试将 Nuxt SSR 应用程序部署到 Firebase Functions 以从客户端和服务器端提供服务,一切都按预期工作,但是当尝试在@nuxtjs/auth
本地实现它时,但在部署到 Firebase 时却不行,查看它说的 Firebase Functions 控制台:
在我的store
文件夹中,我有几个用于 vuex 空间的文件,我在那里创建了 index.js 文件并尝试了有无内容,但结果是一样的。
我在部署函数之前所做的是将生成的 .nuxt 文件夹复制到函数文件夹中:
之后,这是函数文件夹结构:
这是函数内部 nuxt 文件夹的结构:
正如您在 nuxt 文件夹中看到的那样,没有 store 文件夹,只有一个 store.js 文件,阅读它我发现它说:
但是存储文件夹是两个文件夹,在根文件夹中,所以我将其更改为:
并尝试手动部署功能,但结果是相同的错误消息。
我不知道如何在 Firebase 功能的服务器端启用 Vuex,我认为通过更改store.js
文件我可以解决它,但我需要在每次部署中更改它。解决它的正确方法是什么?谢谢。
javascript - Nuxtjs 身份验证模块 - 身份验证策略配置中的令牌端点永远不会被调用
我们有两个端点/auth
和/token
. 端点/auth
返回可在调用/token
以获取访问令牌时使用的授权代码。
使用 NuxtJS,auth
模块成为了要走的路。this.$auth.loginWith("company")
据我所知,登录过程运行良好。我被重定向到登录页面。我可以输入我的凭据,当这些凭据有效时,我会被重定向到配置的 URL。
到那时,一切都按预期工作。重定向将授权代码作为请求参数传递。
这是 URL 的样子:
但是,code
我希望auth
模块会自动调用/token
端点。但事实并非如此。这是为什么?
使用后是否需要显式调用它this.$auth.loginWith("company")
?就像是:
或者它是隐式完成的?
这是里面的配置nuxt.config.js
vue.js - Nuxt.js 自定义角色中间件在页面刷新时不起作用
如果连接的用户不是管理员,我有一个简单的应用程序需要保护一些页面。
我使用 nuxt/auth 包来处理身份验证:
这很好用,但我无法实现我的中间件。所以我想要的是将用户重定向到主页,如果他们没有角色ROLE_ADMIN
我在我想要的页面上使用中间件。例如,当用户登录并进入管理页面而不刷新页面时,它可以完美运行。
但是,如果他们去刷新页面或使用直接 URL,在被我的中间件重定向到主页后,nuxt/auth 会再次将我的用户重定向到“未授权”页面。
为什么会有这种行为?