parent
21b0e00776
commit
31726188ef
3 changed files with 101 additions and 8 deletions
@ -0,0 +1,69 @@ |
||||
import axios from 'axios' |
||||
|
||||
// 官方文档 https://www.axios-http.cn/
|
||||
|
||||
/* |
||||
// GET请求
|
||||
axios.get('http://www.baidu.com').then(function (response) { |
||||
console.log(response) |
||||
}).catch(function (errors) { |
||||
console.log(errors) |
||||
}) |
||||
|
||||
// POST请求
|
||||
axios.post('http://www.baidu.com', {kw: 'haha'}).then(function (response) { |
||||
console.log(response) |
||||
}).catch(function (errors) { |
||||
console.log(errors) |
||||
}) |
||||
|
||||
// GET请求二
|
||||
axios('http://www.baidu.com', { |
||||
params: { |
||||
id: 1 |
||||
} |
||||
}).then(res => {console.log(res)}) |
||||
|
||||
// POST请求二
|
||||
axios({ |
||||
url: 'http://www.baidu.com', |
||||
method: 'post', |
||||
data: { |
||||
id: 1, |
||||
} |
||||
}).then(res => { |
||||
console.log(res) |
||||
}) |
||||
*/ |
||||
|
||||
var URL = 'http://localhost:8000/' |
||||
|
||||
// 创建axios实例
|
||||
const service = axios.create({ |
||||
baseURL: URL, timeout: 6000 // 6m秒超时
|
||||
}) |
||||
|
||||
// request拦截器
|
||||
service.interceptors.request.use(config => { |
||||
const {url} = config // 解构赋值 https://developer.mozilla.org/zh-CN/docs/Web/JavaScript/Reference/Operators/Destructuring_assignment
|
||||
//指定页面访问需要JWT认证。
|
||||
if (url == '/cart/' || url == '/order/' || url == '/checkout/' || url == '/myorder/' || url.indexOf('address/') > 0 || url == 'profile/' || url.indexOf('users/') > 0) { |
||||
var jwt = localStorage.getItem('token') |
||||
config.headers.Authorization = 'JWT ' + jwt |
||||
} |
||||
return config |
||||
}) |
||||
|
||||
service.interceptors.response.use(response => { |
||||
return response |
||||
}, error => { |
||||
console.log(error.response) |
||||
// JWT鉴权失败
|
||||
if (error.response.status === 401) { |
||||
alert('请先登录!') |
||||
} |
||||
return Promise.reject(error.response.data) |
||||
}) |
||||
|
||||
export default service |
||||
|
Loading…
Reference in new issue