问题如下:

有个问题 是这样的 后台给的API接口 请求类型有两种

‘Content-Type’: ‘application/json’

‘Content-Type’: ‘application/x-www-form-urlencoded’

前端在请求接口时,怎么动态设置axios封装的头部请求类型Content-Type。

下面是封装的请求方法

axios封装代码如下:

// 创建axios实例

const instance = axios.create({

baseURL: baseUrl,

timeout: 10000, // 超时

});

// 请求拦截器

instance.interceptors.request.use(

config => {

const token = `Bearer ${utils.local.get('userToken')}`

if (token) config.headers.Authorization = token;

if (config.method === 'post' && config.data !== undefined) {

config.data = qs.stringify(config.data.params);

}

return config;

},

error => {

return Promise.reject(error);

});

//响应拦截

instance.interceptors.response.use(res => {

const { status } = res.data.meta

if (status === 200 || status === 500) {

return Promise.resolve(res);

} else if (status === 401) {

router.push({ path: '/login' }) //登录成功跳转到首页

return Promise.resolve(res);

} else {

return Promise.reject(res);

}

}, error => {

return Promise.reject(error)

})

export default instance;

回答

你建两个实例不就好了,一个axios_json,一个axios_form,或者做一个工具获取获取实例,传一个type参数也行

axios设置text html,axios封装动态设置Content-Type相关推荐

  1. html设置根rem,经过js动态设置根元素的rem方案

    rem目前是响应式开发移动端一个很重要也是经常使用的一个元素,可是在网上看的各类文章都会超级懵逼.因此我在下面给出两个方案,也列举出使用方法,让你们一目了然.前提是设计稿以750为准.其中测试的设计稿 ...

  2. 微信小程序:enablePullDownRefresh、onReachBottomDistance 、动态设置窗口的背景色、动态设置下拉背景字体

    一.enablePullDownRefresh 1.下拉刷新enablePullDownRefresh的支持 单页面配置json文件 {"enablePullDownRefresh" ...

  3. 实现js动态设置css样式,js动态设置全局样式主题色

    需求: 1.设置一个全局的样式 2. 样式是需要动态改变的,改变的内容是通过请求后台接口获取的,因此需要js能够对css进行改变 实现: 或许你可能不相信,代码只需要几行 js代码: // 设置主题色 ...

  4. vue 动态设置div的高度_Vue 动态设置元素高度

    1. Vue文件如下 let windowHeight = parseInt(window.innerHeight) export default { data() { return { window ...

  5. EasyPlayer.js如何实现动态设置解码H.265音频?

    视频平台EasyCVR.EasyGBS.EasyDSS.EasyNVR等均集成了我们自主研发的EasyPlayer视频流媒体系列播放器,可支持H.264/H.265视频编码,并拥有多个版本包括Easy ...

  6. php 设置跨域axios,vue2.0中proxyTable用axios进行跨域请求的设置方法

    vue2.0设置proxyTable使用axios进行跨域请求的方法 这里请求的是知乎日报的api,由@izzyleung这位大神提供的,这是github地址. 在vue-cli构建的项目中先安装ax ...

  7. vue2.0 axios 登录post请求自动读取Set-Cookie设置

    因为axios在登录post请求的时候不会自动读取 Set-Cookie,如图下面的地方 先在在全局配置 axios.defaults.withCredentials = true 下载包 cnpm ...

  8. axios队列 vue_(十三 )Vue 封装axios(四种请求)及相关介绍

    Vue 封装axios(四种请求)及相关介绍 首先axios是基于promise的http库 promise是什么? 1.主要用于异步计算 2.可以将异步操作队列化,按照期望的顺序执行,返回符合预期的 ...

  9. android 如何动态设置margin,Android 动态设置margin

    android的view中有setPadding,但是没有直接的setMargin方法.如果要在代码中设置该怎么做呢? 可以通过设置view里面的LayoutParams 设置,而这个LayoutPa ...

最新文章

  1. java write_java中write(byte[] b)与write(byte[] b,int off,int len)区别
  2. mysql提取数字_Mysql中实现提取字符串中的数字的自定义函数分享
  3. jQuery效果之滑动
  4. [Leetcode][第100题][JAVA][相同的树][二叉树][深度遍历][递归]
  5. arm-none-linux-gnueabi-gcc:未找到命令,“make: arm-none-linux-gnueabi-gcc:命令未找到”
  6. 阿里云centos7监控postgres9.6.6
  7. Java丨Ele实验室“疫情传播仿真程序”的代码实现
  8. Java 重写 多态性_Java 学习(12):重写(Override)与重载(Overload) 多态
  9. 再战中原之收集霸王大陆的资料
  10. 斑马打印机linux驱动安装教程,linux-Zebra软件包的基本安装与配置
  11. 什么是测试场景标准库?
  12. unity摄像头实物识别_MAD Gaze推出人脸识别AR智能眼镜+AI安防方案赋能智慧城市...
  13. 标普500市值门槛提高今日生效 第一太阳能(First Solar)出局
  14. 茗创:脑电数据处理业务
  15. 阿里云AI平台NLP使用
  16. Android Studio 3.2新功能特性
  17. 【题解】bzoj-1415 NOI-2005 聪聪与可可
  18. 用HTML5实现人脸识别-用Javascript实现人脸美容
  19. 谈谈程序员的离职和跳槽
  20. GPS定位系统源码,GPSBDpro油耗监控系统方案

热门文章

  1. 构建一个基本的前端自动化开发环境 —— 基于 Gulp 的前端集成解决方案(四)
  2. Java RuntimeException异常处理汇总
  3. JS组件系列——Bootstrap Table 冻结列功能IE浏览器兼容性问题解决方案
  4. jQuery.click()与onClick
  5. 使用CSS更改HTML5输入的占位符颜色
  6. 聊聊flink的OperatorStateBackend
  7. http协议头信息详解
  8. Apache服务器和tomcat服务器有什么区别?
  9. JS字符串的下划线命名和驼峰命名转换
  10. 【备忘】Android获取正在使用网络的IP4地址