VUE項目axios請求頭更改Content-Type操作
我就廢話不多說了,大家還是直接看代碼吧~
const httpServer = (opts, data) => { const token = localStorage.getItem(’token’) const PUBLIC = `?token=${token}` let httpDefaultOpts = ’’ var host = `${process.env.HOST}` var prot = `${process.env.PORT}` var base = host +(prot?':'+prot:'') if (opts.method === ’post’) { httpDefaultOpts = { method: opts.method, url: `${base}${opts.url}${PUBLIC}`, headers:{’Content-Type’:’application/text/html;charset=utf-8’ //改這里就好了}, data: data } } else { httpDefaultOpts = opts } return new Promise(function (resolve, reject) { Axios(httpDefaultOpts).then( (res) => { successState(res) resolve(res) } ).catch( (err) => { errorState(err) reject(err) } ) })}
補充知識:Vue獲取并存儲服務器返回的AuthorizationToken信息并給每次請求添加上token
由于后臺是用jwt的token進行身份權限驗證,后臺在登錄后把token添加響應頭里,所以前臺需要把這個token存放起來,并給每次請求的請求頭添加上token,服務器才能獲取token進行身份認證。
前臺使用vue項目:
loging.vue(登錄組件)
{ submitForm(formName) { this.$axios .post(’/api/admin/login’, { userName: this.ruleForm.userName, password: this.ruleForm.password }) .then(successResponse => { this.responseResult = JSON.stringify(successResponse.data) this.msg = JSON.stringify(successResponse.data.msg) if (successResponse.data.code === 200) { this.msg=’’; localStorage.setItem(’userName’,this.ruleForm.userName); //獲取并存儲服務器返回的AuthorizationToken信息 var authorization=successResponse.headers[’authorization’]; localStorage.setItem(’authorization’,authorization); //登錄成功跳轉頁面 this.$router.push(’/dashboard’); } }) .catch(failResponse => {}) } }
main.js(全局配置js):
//自動給同一個vue項目的所有請求添加請求頭axios.interceptors.request.use(function (config) { let token = localStorage.getItem(’authorization’); if (token) { config.headers[’Authorization’] = token; } return config;})
這里還需要考慮token過期失效的問題,博主將會在后續另寫博客補充。
以上這篇VUE項目axios請求頭更改Content-Type操作就是小編分享給大家的全部內容了,希望能給大家一個參考,也希望大家多多支持好吧啦網。
相關文章:
