Skip to main content

需要 bearer token 的数据推送

原理:每次推送先获得一个 token,然后将这个 token 放入 header 的 authorization 字段中。

执行:

  1. 在项目实施文件夹下新建一个auth文件夹,创建一个getAccessToken.js文件,并添加如下代码:
import axios from "axios";

export default {
// 'sms'这里替换为每个数据消费者的id
'sms': async () => {
const ret = await axios.post("host:port", {
appId: "xxx", // 示例
appSecret: "xxx", // 示例
});

if (ret.success) {
return ret.data.token;
} else {
console.error("[API dataconsumer] 获取accessToken失败");
throw new Error("获取accessToken失败");
}
},
}
  1. 在同级目录下添加index.js文件,将getAccessToken.js暴露出来:
import getAccessToken from "./getAccessToken.js";

export default {
getAccessToken,
};
  1. 在系统参数配置的dataConsumer内的对应项添加字段"authType": "bearer"
  "dataConsumers": [
{
"id": "crm",
"url": "xxx",
"ui": {
"tooltip": "xxx",
"show": "xxx"
},
"authType": "bearer", //新添加
"appId": "xxx" // 其他需要放在headers里面的字段
}
],