Vue cookie 设置为来自单独 js 文件的对象



我在这里遇到了一个问题,不知何故,我的cookie被设置为object object它应该像token一样设置。我正在从单独的js文件中设置它。

所以这是保存设置cookie功能的js文件:

export const authenticate = (username, password) => {
    API.post('/login', {
        username: username,
        password: password
    }).then(response => {
        console.log(response.data.token)
        if(response.data.token) {
            Vue.cookie.set({'token': response.data.token});
            router.push({name: 'home'});
        } else {
            const error = 'Something went wrong. Try again.';
            return console.log({'error': error});
        }
    }).catch(error => {
        //error = 'Something went wrong. Try again.';
        return console.log(error);
    });    
}

console.log(response.data.token)这记录了我的纯文本令牌。

然后在Login.vue中我调用此函数:

methods: {
    authenticateUser() {
        authenticate(this.username, this.password);
    }
}

像这样的饼干集:[对象对象]

所以评论中的@Lewis答案有效!我使用了错误的语法。

而不是Vue.cookie.set({'token': response.data.token});

需要使用:Vue.cookie.set('token', response.data.token);

你用来处理cookie的库的语法似乎很奇怪。

你可以试试js-cookie来处理它,如下所示,

import Cookies from 'js-cookie'
Cookies.set('token', response.data.token)

最新更新