npm install axios --save
common->request->apiconst.js(自行修改,无用的可以去掉)
/** * Api 常量配置 */
//后端ip
export const url_host = 'http://b.test.com:10102';
//后端ip(sso)
export const sso_url_host = 'http://a.test.com:10101';
//登录注册,加密密码
export const salt="fesdb13632twfs;'." //加密算法-盐
//保存用户信息的key
export const userInfo = 'userInfo';
// 登录认证地址
export const ssoVerifyLogin= sso_url_host+ "/login"
// 登出地址
export const logout= sso_url_host+"/logout"
//是否登录过
export const isLogout=sso_url_host+"/isLogout"
/** * 后端用户信息获取接口 * */
export const getUser = '/user/getUser';
common->request->axiosconfig.js
import axios from 'axios'
import {url_host} from './apiconst'
import router from '@/router/index'
/* @ 创建自定义axios实例 */
const instance_ax = axios.create({
baseURL: url_host,//统一请求
headers:{},
timeout: 10000
})
axios.defaults.withCredentials=true; //让ajax携带cookie
/* @ request 请求拦截器=>请求发出前处理 */
instance_ax.interceptors.request.use(
config => {
//每次请求都携带token
config.headers.jwtToken= window.localStorage.getItem("jwtToken")
//请求前处理
return config;
}, error => {
// 接口返回失败
Promise.reject(error.response);
}
)
/* @ request 响应拦截器=>处理响应数据 */
instance_ax.interceptors.response.use(
response => { //正确
return Promise.resolve(response);
},
error => {//后端报错
// 如果权限过期或者token伪造的或者token过期了,后端返回401
if (error.response.status===401) {
//重定向登录页,并携带原路径
router.push({
path: '/login',
query:{sourceUrl:router.currentRoute.fullPath}
});
}
return Promise.reject(error.response);
}
)
export default instance_ax;
import request from './axiosconfig'
export function Get(uri, params) {
return request({
url: uri,
method: 'get',
params: params
})
}
export function Post(uri, params) {
return request({
url: uri,
method: 'post',
data: params
})
}
// 上传文件
export function PostFile (uri, params) {
return request({
url: uri,
method: 'post',
headers: { 'Content-Type': 'multipart/form-data' },
params
});
};
export function Delete(uri, params) {
return request({
url: uri,
method: 'delete',
params: params
})
}
export function Put(uri, params) {
return request({
url: uri,
method: 'put',
data: params
})
}
在vue文件中script标签内添加
import {Get} from "./../common/request/httputil";
然后直接使用就行
Get("/test/a1",{}).then(res=>{
this.str=res.data;
console.log("111122211----")
}).catch(error=>{
console.log("error",error)
})
版权说明 : 本文为转载文章, 版权归原作者所有 版权申明
原文链接 : https://blog.csdn.net/weixin_45203607/article/details/120930488
内容来源于网络,如有侵权,请联系作者删除!