vue 接口拦截

/**axios封装
 * 请求拦截、相应拦截、错误统一处理
 */
import axios from 'axios';
import QS from 'qs';

// 请求超时时间
axios.defaults.timeout = 60000;
// post请求头
axios.defaults.headers.post['Content-Type'] = 'application/x-www-form-urlencoded;charset=UTF-8';
// 请求拦截器
axios.interceptors.request.use(
	config => {
		return config;
	},
	error => {
		return Promise.error(error);
	})

// 响应拦截器
axios.interceptors.response.use(
	response => {
		return response;
	},
	// 服务器状态码不是200的情况    
	error => {
		return Promise.resolve(error.response);
	}
);
/** 
 * get方法,对应get请求 
 * @param {String} url [请求的url地址] 
 * @param {Object} params [请求时携带的参数] 
 */
export function get(url, params) {
	return new Promise((resolve, reject) => {
		axios.get(url, {
				params: params
			})
			.then(res => {
				resolve(res);
			})
			.catch(err => {
				reject(err)
			})
	});
}
/** 
 * post方法,对应post请求 
 * @param {String} url [请求的url地址] 
 * @param {Object} params [请求时携带的参数] 
 */
export function post(url, params) {
	return new Promise((resolve, reject) => {
		axios({
				url: url,
				method: 'post',
				data: params // data就是body参数
			})
			.then(res => {
				resolve(res);
			})
			.catch(err => {
				reject(err)
			})
	});
}

export function postFile(url, params) {
	return new Promise((resolve, reject) => {
		axios({
				headers: {
					'Content-Type': 'multipart/form-data;boundary = ' + new Date().getTime()
				},
				url: url,
				method: 'post',
				data: params // data就是body参数
			})
			.then(res => {
				resolve(res);
			})
			.catch(err => {
				reject(err)
			})
	});
}


/****人脸识别模块 的接口***/


//文件上传
export function postFileStaff(url, params) {
	return new Promise((resolve, reject) => {
		axios({
				headers: {
					'Content-Type': 'multipart/form-data;boundary = ' + new Date().getTime(),
					
				},
				url: url,
				method: 'post',
				data: params // data就是body参数
			})
			.then(res => {
				resolve(res);
			})
			.catch(err => {
				reject(err)
			})
	});
}

// 人脸识别 信息提交
export function postStaff(url, params) {
	return new Promise((resolve, reject) => {
		axios({
				url: url,
				headers: {
					'token': localStorage.getItem("accessToken")
				},
				method: 'post',
				data: params // data就是body参数
			})
			.then(res => {
				resolve(res);
			})
			.catch(err => {
				reject(err)
			})
	});
}


// 获取token
export function getStaffToken(url, params) {
	return new Promise((resolve, reject) => {
		axios.get(url, {
				params: params
			})
			.then(res => {
				resolve(res);
			})
			.catch(err => {
				reject(err)
			})
	});
}

上一篇:7.图形交互----cmmnV1.1


下一篇:axios post提交数据的三种请求方式