GW Web API
用法
引入依赖库
import axios from 'axios'; //网络请求库
import qs from "qs"; //将URL解析成对象的库
解析当前网页地址上拼接的token和api参数
let query = location.href.split("?")[1];
let {token, api} = qs.parse(query);
let context = {}
网页地址上api路径发起网络请求,获取appId,session,loginUrl
axios.post(api, {
token: token
}).then(rep => {
console.log('response', rep);
context.appId = rep.data.appId;
context.session = rep.data.session;
context.loginUrl = rep.data.loginUrl;
doRequest();
}).catch(e => {
console.log(e);
})
利用获取的CUTOS的session信息,发送自身服务网络请求
function doRequest() {
let counter = 0;
let handler = setInterval(function () {
test();
//此处test为基于CUTOS系统的session和appId信息,包装自身的服务网络请求,需要在headers中包含二者信息。
counter++;
if (counter >= 10) {
clearInterval(handler);
}
}, 1000);
}
function test() {
axios.get('http://localhost:8080/test', {
headers: {
appId: context.appId,
session: context.session
}
}).then(rep => {
}).catch(e => {
console.log(e);
if (e.response.status === 401) {
window.location = context.loginUrl;
}
});
}
函数test调用的网络请求,需要配合Java端的定义。'http://localhost:8080/test'为java服务的启用地址。