美文网首页
Nuxt使用cookies踩坑之设置axios的header

Nuxt使用cookies踩坑之设置axios的header

作者: 泪滴在琴上 | 来源:发表于2019-11-01 16:52 被阅读0次

middleware下创建axiosMiddle.js

import axios from 'axios'

import md5 from 'js-md5'

import cookies from 'js-cookie'

export default function({req,res}) {

 if (req.headers !== undefined) {

    let cookieArr = req.headers.cookie;

    //获取cookie然后拆成键值对

    const getUserName = getCookie('name', cookieArr)

    const getToken = getCookie('tiken', cookieArr)

    //设置axios的全局变量.

    axios.defaults.timeout = 60000 // 响应时间

    // @requestParams

    axios.defaults.headers.post['Content-Type'] = 'application/x-www-form-urlencoded;charset=UTF-8'

    axios.defaults.headers.username = getUserName

    axios.defaults.headers.token = getToken

    axios.defaults.withCredentials = true

  }

}

//解析浏览器中的cookies

function getCookie (name, strCookie) {

  console.log('strCookie',strCookie)

  var arrCookie = strCookie.split(';')

  for (var i = 0; i < arrCookie.length; i++) {

    var arr = arrCookie[i].split('=')

    if (arr[0].trim() === name) {

      return arr[1]

    }

  }

  return {}

}

在nuxt.config,js中设置下使用中间件即可

router: {

    middleware:'axiosMiddle'

  },

至此,结束

作者:雪人Man
链接:https://juejin.im/post/5cb18b08f265da035b618899
来源:掘金
著作权归作者所有。商业转载请联系作者获得授权,非商业转载请注明出处。

相关文章

网友评论

      本文标题:Nuxt使用cookies踩坑之设置axios的header

      本文链接:https://www.haomeiwen.com/subject/ekcqbctx.html