API请求
我们把数据请求放到一个文件中,进行统一管理。这会使我们的代码看起来更精练和可读性更高。 项目中,我们对
axios进行统一封装,方便在项目中直接调用。
axios
Promise based HTTP client for the browser and node.js
- Installing
npm install axios
Plugin axios
import axios from 'axios'
export default function fetch(url, params) {
return new Promise((resolve, reject) => {
axios.post(url, params)
.then(response => {
resolve(response.data);
}, err => {
reject(err);
})
.catch((error) => {
reject(error)
})
})
}
Usage
// src/service/getData.js
import fetch from 'assets/js/fetch';
/** 发送验证码 **/
export const sentVerify = (params) => fetch('/api/userinfo/wxSendCode', params)
/** 登录 **/
export const Login = (params) => fetch('/api/userinfo/wxLogin', params)
proxyTable路由代理
在开发环境下,我们为了解决跨域问题,通过配置
proxyTable解决。
// config/index.js
proxyTable: {
'/api': {
target: 'http://172.16.50.57:8080',
pathRewrite: { '^/api': '/api' }
}
}