axios请求方法与示例以及拦截器

一,axios请求方法(post和put方法)

…axios.post()有以下3个参数

(1)url路径:请求的后台接口路径。
(2)data:请求数据。
(3)config:

…post请求数据格式(两种)

1.from-data:用于表单提交。在旧的网页一般都是用表单提交,就是用于数据交互,而现在大多数网站都是通过AJAX进行数据交互,但表单提交仍然存在,因为上传数据和文件都需要用form-data格式

  • from-data示例
	let data = {id:12},
	let fromData = new FormData();
	for(let key in data){
		let value = data[key];
		formData.append(key,value);
    }
    axios.post('static/post.json',formData)
    .then(res=>{
		console.log(res)
     })

2.application/json:现在大多数情况下都用这种模式,因为JSON文件用的比较广泛,所以application/json做交互。

  • application/json示例
let data = { id:12 },
axios.post('static/post.json',data)
.then(res=>{
console.log(res)
})

二,创建实例与拦截器

(1)创建实例

	const request = axios.create({
	baseURL:"填写基本路径"timeout:"请求超时时长限制,单位是毫秒"url:"请求路径通常是具体的执行接口的详细相对路径"method:"请求方法,包括get,post,put,delete,patch常用方法"headers:{
	    token:""
	},
	params:{跟在URL后面的参数,多个参数会自动用&连接},
	data:{在请求体中的参数}
	})

(2) 请求拦截器

 request.interceptors.request.use(
 config=>{
 	// 根据需要添加
    // config.headers.Authorization = 'Bearer ' + localStorage.getItem("token");
 	return config
 	// 可根据添加  加载中...
 },
 err=>{
 	return Promise.reject(err)
 }
 )

(3) 响应拦截器

  request.interceptors.response.use(
  res=>{
  	return res
  //	toast.clear();
  //	Promise.resolve(err);
  //	return err;
  },
  err=>{
  	return err
  //	toast.clear();
  //	Promise.resolve(err);
  //	return err;
  }
  )

(4) 创建多个实例

  实例一
  const request1=axios.create({
  baseURL:"填写基本路径"timeout:"请求超时时长限制,单位是毫秒"
  }),
  实例二
  const request2=axios.create({
  baseURL:"填写基本路径"timeout:"请求超时时长限制,单位是毫秒"
  }),
  拦截实例一
  reques1.interceptors.request.use(
  config=>{
  	return config
  },
  err=>{
    return err
  }
  ),
  request1.response.use(
  res=>{
  	return res
  },
  err=>{
  	return err
  }
  ),
  拦截实例二
  request2.interceptors.request.use(config=>{
     return config
  },
  err=>{
  	return err
  }
  ),
  request2.intercaptors.response.use(
  res=>{
  	return res
  },
  err=>{
  	return err
  }
  )
  
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值