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服务的启用地址。

运行

1. 启用java端代码
2. 启用web端代码
3. 打开cutos后台系统-网关管理-应用服务管理 找到对应的app-打开

cutos-gw.png 打开后的网址,举例: http://localhost:5000/index.html?token=997189f2-bce1-4476-b84f-1af8fc0b59cb&api=https://www.cut-os.com/rest/sv/gw/app/admin/token_session

results matching ""

    No results matching ""