Skip to content

Commit 10fd8af

Browse files
committed
SDK
1 parent 198b9b5 commit 10fd8af

File tree

4 files changed

+50
-6
lines changed

4 files changed

+50
-6
lines changed

package.json

Lines changed: 7 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -18,6 +18,7 @@
1818
"@antv/data-set": "^0.11.8",
1919
"@antv/g2": "^4.2.10",
2020
"af-table-column": "^1.0.3",
21+
"appmesh": "^0.2.6",
2122
"axios": "^1.6.2",
2223
"element-ui": "^2.15.14",
2324
"js-base64": "^3.7.5",
@@ -47,19 +48,25 @@
4748
"babel-core": "^7.0.0-bridge.0",
4849
"babel-eslint": "^10.1.0",
4950
"babel-jest": "^29.7.0",
51+
"buffer": "^6.0.3",
5052
"chalk": "^4.1.2",
5153
"connect": "^3.7.0",
5254
"eslint": "^8.55.0",
5355
"eslint-plugin-vue": "^9.19.2",
5456
"html-webpack-plugin": "^4",
57+
"https-browserify": "^1.0.0",
5558
"mockjs": "^1.1.0",
59+
"process": "^0.11.10",
5660
"runjs": "^4.4.2",
5761
"sass": "^1.83.4",
5862
"sass-loader": "^13.3.3",
5963
"script-loader": "^0.7.2",
6064
"serve-static": "^1.15.0",
65+
"stream-browserify": "^3.0.0",
66+
"stream-http": "^3.2.0",
6167
"svg-sprite-loader": "^6.0.11",
6268
"svgo": "^3.0.4",
69+
"url": "^0.11.4",
6370
"vue-template-compiler": "^2.7.16"
6471
},
6572
"engines": {

src/api/labels.js

Lines changed: 3 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -1,10 +1,9 @@
11
import request from '@/utils/request'
2+
import { getClient } from '@/utils'
23

34
export function getLabels() {
4-
return request({
5-
url: '/appmesh/labels',
6-
method: 'GET',
7-
})
5+
const client = getClient();
6+
return client.view_tags().then(data => ({ data }));
87
}
98

109
export function updateLabels(data) {

src/utils/index.js

Lines changed: 27 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -2,6 +2,11 @@
22
* Created by PanJiaChen on 16/11/18.
33
*/
44
import moment from "moment";
5+
6+
import store from '@/store'
7+
import { getToken } from '@/utils/auth'
8+
import { AppMeshClient } from "appmesh";
9+
510
/**
611
* Parse the time to string
712
* @param {(Object|string|number)} time
@@ -181,3 +186,25 @@ export function formatCpu(cpu) {
181186
}
182187
return cpu.toFixed(1);
183188
}
189+
190+
export function getClient(data = null) {
191+
// Use window to store a global instance
192+
if (!window._appmeshClient) {
193+
window._appmeshClient = new AppMeshClient();
194+
195+
const client = window._appmeshClient;
196+
const token = store.getters?.token;
197+
const forwardingHost = store.getters?.forwarding;
198+
const headers = data?.headers || {};
199+
200+
// Set token and forwardingHost if needed
201+
if (token && !('Authorization' in headers)) {
202+
client._jwtToken = getToken();
203+
}
204+
if (forwardingHost && !('X-Target-Host' in headers)) {
205+
client.forwardingHost = forwardingHost;
206+
}
207+
}
208+
209+
return window._appmeshClient;
210+
}

vue.config.js

Lines changed: 13 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -2,6 +2,7 @@
22
'use strict'
33
const path = require('path')
44
const { defineConfig } = require('@vue/cli-service')
5+
const webpack = require('webpack')
56
const defaultSettings = require('./src/settings.js')
67

78
function resolve(dir) {
@@ -41,9 +42,19 @@ module.exports = defineConfig({
4142
name: name,
4243
resolve: {
4344
fallback: {
44-
path: require.resolve('path-browserify')
45+
path: require.resolve('path-browserify'),
46+
"https": require.resolve("https-browserify"),
47+
"http": require.resolve("stream-http"),
48+
"stream": require.resolve("stream-browserify"),
49+
"buffer": require.resolve("buffer/"),
50+
"url": require.resolve("url/")
4551
}
46-
}
52+
},
53+
plugins: [
54+
new webpack.ProvidePlugin({
55+
Buffer: ['buffer', 'Buffer'],
56+
})
57+
]
4758
},
4859

4960
chainWebpack(config) {

0 commit comments

Comments
 (0)