vue.js - 将 Nuxt-Auth 与 Cookie 一起使用
问题描述
我正在尝试让 Nuxt.js 使用 cookie 身份验证。我正在使用带有 cookie 设置的 nuxt-auth。带有 Passport 的 Laravel 后端。
我需要使用 Cookies 的原因是因为我计划将 nuxt 项目放在我的主域名上(使用登录名),然后将 app.mydomainname.com 用于实际应用程序。主网站也有使用身份验证的面向公众的页面。
这是我对 nuxt-auth 的 nuxt.js 的配置:
auth: {
local: false,
redirect: {
login: "/login",
logout: "/login",
callback: "/login",
home: false,
},
strategies: {
cookie: {
token: {
property: "data.access_token",
},
user: {
property: "data",
},
endpoints: {
login: {
url: "v1/auth/login",
method: "post",
propertyName: "access_token",
},
logout: { url: "/v1/auth/logout", method: "delete" },
user: { url: "/v1/settings", method: "get" },
},
},
},
},
登录工作正常,但是当我查看我的 editthiscookie chrome 插件时,cookie 没有设置,因此对 /settings 的调用不起作用:
如您所见,cookie 只是设置为 true 而不是访问令牌。
任何有关配置的帮助都会有所帮助。
谢谢
解决方案
弄清楚了。我必须在令牌配置中设置required: true
和设置。type: "Bearer"
所以它现在看起来像这样:
auth: {
redirect: {
login: "/login",
logout: "/login",
callback: "/login",
home: false,
},
strategies: {
local: false,
cookie: {
token: {
property: "data.access_token",
required: true,
type: "Bearer",
},
user: {
property: "data",
},
endpoints: {
login: {
url: "v1/auth/login",
method: "post",
},
logout: { url: "/v1/auth/logout", method: "delete" },
user: { url: "/v1/settings", method: "get" },
},
},
},
},
推荐阅读
- dart - 我无法添加 Text(installedApps[index]["app_name"]) 因为 'index' 没有定义。如何添加此文本?
- javascript - 如何在Angular 2中过滤具有多个复选框的范围滑块的结果?
- mongodb - 如何使用相对于纪元时间的时间跨度过滤 mongo db 文档?
- python-3.x - 生成具有一些保证存在的半随机数集
- python - 基本 Python 问题:向后切片 (-1) 的行为因字符串长度而异。为什么?
- opencv - 我的 CBIR 系统结果如此糟糕是否正常?
- java - 这种方法标准是否使用 varags.length 而不是布尔值?
- android - 我应该将 BroadcastReceiver 或 Service 与警报管理器一起使用吗?
- ios - NavigationController NavigationBar TitleView 在 iOS Objective-C 中的导航栏大标题中不起作用
- javascript - CORS 策略已阻止对来自源的请求的访问。电子邮件发送失败并出现此错误