Laravel 带有 Vue.js SPA 的护照
Laravel Passport with Vue.js SPA
如果我使用创建新的 API 令牌,我(不需要)是否需要在来自 Vue.js 应用程序的 cookie 中设置令牌?我看到很多 Laravel Passport 的例子,但它们都只显示背面,没有正面。
有多种方法可以做到这一点,您可以使用 cookie 或本地存储,
Laravel 密码主要使用令牌验证请求,因此如果您在前端使用 Vue Auth,则可以定义一个构造函数来在每次发送请求时发送令牌。
constructor() {
let userToken = window.localStorage.getItem('token');
let userData = window.localStorage.getItem('user');
if (typeof userToken !== 'undefined' || typeof userData !== 'undefined') {
this.user = userData;
this.token = userToken;
} else {
this.user = null;
this.token = null;
}
if (this.token !== null && this.token !== 'undefined') {
axios.defaults.headers.common['Authorization'] = 'Bearer ' + this.token;
} else {
this.authenticated = false;
this.logout();
}
我在 app.js
中使用它
if (store.state.user.token !== undefined) {
axios.defaults.headers.common['Authorization'] = "Bearer " + store.state.user.token
}
但是 createFreshApiToken 那是为了什么?
如果我使用创建新的 API 令牌,我(不需要)是否需要在来自 Vue.js 应用程序的 cookie 中设置令牌?我看到很多 Laravel Passport 的例子,但它们都只显示背面,没有正面。
有多种方法可以做到这一点,您可以使用 cookie 或本地存储, Laravel 密码主要使用令牌验证请求,因此如果您在前端使用 Vue Auth,则可以定义一个构造函数来在每次发送请求时发送令牌。
constructor() {
let userToken = window.localStorage.getItem('token');
let userData = window.localStorage.getItem('user');
if (typeof userToken !== 'undefined' || typeof userData !== 'undefined') {
this.user = userData;
this.token = userToken;
} else {
this.user = null;
this.token = null;
}
if (this.token !== null && this.token !== 'undefined') {
axios.defaults.headers.common['Authorization'] = 'Bearer ' + this.token;
} else {
this.authenticated = false;
this.logout();
}
我在 app.js
中使用它if (store.state.user.token !== undefined) {
axios.defaults.headers.common['Authorization'] = "Bearer " + store.state.user.token
}
但是 createFreshApiToken 那是为了什么?