axios的配置

const axios=require('axios');   //创建axios对象
axios.defaults.baseURL='http://192.168.56.100:8888'; //vue请求后端地址
axios.defaults.timeout=1000;                   //多久超时
axios.defaults.withCredentials= true;          //携带cookie需要添加
/**
 * 设置请求传递数据的格式(看服务器要求的格式)
 * x-www-form-urlencoded
 * 默认提交表单
 * 把数据对象序列化成 表单数据
 */
//axios.default.headers['Content-Type']='application/x-www-form-urlencoded';
//axios.default.transformRequest=data =>qs.stringify(data);
/**
 *设置默认提交JSON post发送的数据
 * 把数据对象序列化成json字符串
 */
axios.defaults.headers['Content-Type']='application/json';
axios.defaults.transformRequest=data =>JSON.stringify(data);


//请求拦截器
axios.interceptors.request.use(config=>{
  //从localStorage获取token
  let token = localStorage.getItem('token');
  //如果有token,就把token设置到请求头中Authorization字段中
  token &&(config.headers.Authorization=token);
  return config;

  },error=>{
  return Promise.reject(error);
  }
);

//响应拦截器
axios.interceptors.response.use(response=>{
  //当响应码 2xx的情况,进入这里
  return response.data;
  },error => {
  //当相应码不是2xx的情况,进入这里
  return error
  }
);
//get方法,对应get请求
//@params{String} url[请求的url地址]
//@params{Object} params[请求时携带的参数]
export function get(url,params,headers) {
  return new Promise((resolve,reject)=>{
    axios.get(url,{params,headers}).then(res=>{
      resolve(res.data.ResultObj)
    }).catch(err=>{
      reject(err.data)
    })
    }

  )
}
//post方法,对应post请求
export function post(url,params,headers) {
  return new Promise((resolve,reject)=>{
      axios.post(url,params,headers).then((res)=>{
        resolve(res.data)
      }).catch(err=>{
        reject(err.data)
      })
    }

  )
}

export default axios;
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
在Vue项目中使用Axios进行网络请求是非常常见的配置。下面是一个简单的Vue Axios配置的示例: 1. 首先,你需要在项目中安装Axios。可以使用npm或者yarn命令进行安装: ``` npm install axios ``` 或者 ``` yarn add axios ``` 2. 在Vue项目中创建一个单独的文件,例如`api.js`,用于封装Axios配置和请求方法。 ```javascript import axios from 'axios'; // 创建一个axios实例 const instance = axios.create({ baseURL: 'http://api.example.com', // 设置请求的基础URL timeout: 5000, // 设置请求超时时间 }); // 请求拦截器 instance.interceptors.request.use( (config) => { // 在发送请求之前做一些处理,例如添加请求头等 return config; }, (error) => { // 处理请求错误 return Promise.reject(error); } ); // 响应拦截器 instance.interceptors.response.use( (response) => { // 对响应数据进行处理,例如解析数据等 return response.data; }, (error) => { // 处理响应错误 return Promise.reject(error); } ); // 封装请求方法 export default { get(url, params) { return instance.get(url, { params }); }, post(url, data) { return instance.post(url, data); }, // 其他请求方法,例如put、delete等 }; ``` 3. 在需要使用Axios进行网络请求的组件中,引入`api.js`文件,并调用封装好的请求方法。 ```javascript import api from './api.js'; export default { methods: { fetchData() { api.get('/data') .then((response) => { // 处理请求成功的数据 }) .catch((error) => { // 处理请求失败的错误 }); }, }, }; ``` 这样,你就可以在Vue项目中使用Axios进行网络请求了。

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值