版权声明:在那最初的相遇中,我们都曾经为彼此心动过... https://blog.csdn.net/weixin_36185028/article/details/83269177
使用nuxt框架做http请求,每次要把cookie传到后端,使用document.cookies不能在后端获取cookies,使用cookie-universal-nuxt插件
https://www.npmjs.com/package/cookie-universal-nuxt
安装:
npm i --save cookie-universal-nuxt
在nuxt.config.js中使用
{
modules: [
// Simple usage
'cookie-universal-nuxt',
// With options
['cookie-universal-nuxt', { alias: 'cookiz' }],
]
}
使用@nuxtjs/proxy和@nuxtjs/axios插件下的axios请求时在头部带上cookie
只需添加config.headers.Authorization = app.$cookies.get('token')
plugins/axios.js:
import qs from "qs";
export default function ({ $axios, app }) {
// console.log(app.$cookies.get('token')) //每次请求获取cooie
$axios.onRequest(config => {
//获取cookie放在头部传到后端
config.headers.Authorization = app.$cookies.get('token')
config.data = qs.stringify(config.data, {
allowDots: true //Option allowDots can be used to enable dot notation
});
return config;
});
$axios.onResponse(response => {
return Promise.resolve(response.data);
});
$axios.onError(error => {
return Promise.reject(error);
});
}