runner-runtime 1.0.72 → 1.0.73

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/events/api.js CHANGED
@@ -614,7 +614,7 @@ const convert2PostmanOptions = (request, option, variables) => {
614
614
  values: globalsVariables,
615
615
  });
616
616
 
617
- const protocolVersion = requestJson?.protocol == 'http/1.1' ? 'http1' : (requestJson?.protocol == 'auto' ? 'auto' : 'http2');
617
+ const protocolVersion = (requestJson?.protocol == 'http/1.1' || _.includes(['sse'], requestJson?.target_type) || _.isEmpty(requestJson?.target_type)) ? 'http1' : (requestJson?.protocol == 'auto' ? 'auto' : 'http2');
618
618
  const requester = {
619
619
  strictSSL: false,
620
620
  protocolVersion,
@@ -893,10 +893,9 @@ const convert2PostmanEvent = (request, listen, option) => {
893
893
  }
894
894
  };
895
895
 
896
- // pm.execute
897
- pm.execute = async (file, args, option) => {
898
- const { createUnixClient } = require('net'),
899
- socketPath = getMainProcessSocketPath();
896
+ // pm.execute/Async
897
+ pm.executeAsync = pm.execute = async (file, args, option) => {
898
+ const { createUnixClient } = require('net'), socketPath = getMainProcessSocketPath();
900
899
 
901
900
  try {
902
901
  const result = await createUnixClient(socketPath, JSON.stringify({
@@ -912,8 +911,7 @@ const convert2PostmanEvent = (request, listen, option) => {
912
911
  console.error("pm.execute error: " + String(resultObj?.result))
913
912
  throw new Error(resultObj?.result);
914
913
  }
915
- }
916
- catch (e) {
914
+ }catch (e) {
917
915
  console.error("pm.execute error: " + String(e))
918
916
  throw new Error(e);
919
917
  }
@@ -2243,8 +2241,31 @@ module.exports = (event, option, callback, eventRuntimeData, eventResultList) =>
2243
2241
  _.forEach(results, (result) => {
2244
2242
  _.forEach(['_variables', 'environment', 'globals'], (varType) => {
2245
2243
  const currentVar = _.get(result, `result.${varType}`);
2244
+ const currentVarObject = {};
2245
+
2246
2246
  try {
2247
- _.forEach(currentVar.toObject(), (val, key) => {
2247
+ _.forEach(_.get(currentVar.toJSON(), 'values'), (item) => {
2248
+ currentVarObject[item?.key] = item?.value;
2249
+ })
2250
+ } catch (e) { }
2251
+
2252
+ try {
2253
+ // Delete the variables that have been destroyed
2254
+ const unsetKeys = _.difference(_.keys(_.get(eventRuntimeData, ['variables', varType])), _.keys(currentVarObject));
2255
+
2256
+ _.forEach(unsetKeys, (unsetKey) => {
2257
+ if (varType == 'globals' && !_.includes(_.keys(getInsideVariables()), unsetKey)) {
2258
+ _.unset(eventRuntimeData, ['variables', '_globals', unsetKey])
2259
+ _.unset(eventRuntimeData, ['variables', varType, unsetKey])
2260
+ } else if (varType == '_variables') {
2261
+ _.unset(eventRuntimeData, ['variables', 'variables', unsetKey])
2262
+ } else {
2263
+ _.unset(eventRuntimeData, ['variables', varType, unsetKey])
2264
+ }
2265
+ })
2266
+
2267
+ // Set new variable values for the undestroyed ones
2268
+ _.forEach(currentVarObject, (val, key) => {
2248
2269
  let setPath = varType;
2249
2270
  if (varType === '_variables') {
2250
2271
  setPath = 'variables';
@@ -2320,9 +2341,31 @@ module.exports = (event, option, callback, eventRuntimeData, eventResultList) =>
2320
2341
  _.forEach(results, (result) => {
2321
2342
  _.forEach(['_variables', 'environment', 'globals'], (varType) => {
2322
2343
  const currentVar = _.get(result, `result.${varType}`);
2344
+ const currentVarObject = {};
2345
+
2346
+ try {
2347
+ _.forEach(_.get(currentVar.toJSON(), 'values'), (item) => {
2348
+ currentVarObject[item?.key] = item?.value;
2349
+ })
2350
+ } catch (e) { }
2323
2351
 
2324
2352
  try {
2325
- _.forEach(currentVar.toObject(), (val, key) => {
2353
+ // Delete the variables that have been destroyed
2354
+ const unsetKeys = _.difference(_.keys(_.get(eventRuntimeData, ['variables', varType])), _.keys(currentVarObject));
2355
+
2356
+ _.forEach(unsetKeys, (unsetKey) => {
2357
+ if (varType == 'globals' && !_.includes(_.keys(getInsideVariables()), unsetKey)) {
2358
+ _.unset(eventRuntimeData, ['variables', '_globals', unsetKey])
2359
+ _.unset(eventRuntimeData, ['variables', varType, unsetKey])
2360
+ } else if (varType == '_variables') {
2361
+ _.unset(eventRuntimeData, ['variables', 'variables', unsetKey])
2362
+ } else {
2363
+ _.unset(eventRuntimeData, ['variables', varType, unsetKey])
2364
+ }
2365
+ })
2366
+
2367
+ // Set new variable values for the undestroyed ones
2368
+ _.forEach(currentVarObject, (val, key) => {
2326
2369
  let setPath = varType;
2327
2370
  if (varType === '_variables') {
2328
2371
  setPath = 'variables';
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "runner-runtime",
3
- "version": "1.0.72",
3
+ "version": "1.0.73",
4
4
  "description": "runner-runtime.",
5
5
  "main": "index.js",
6
6
  "scripts": {
package/tmp/request.js CHANGED
@@ -1,25 +1,15 @@
1
- module.exports ={
1
+ module.exports = {
2
2
  "option": {
3
3
  "scene": "auto_test",
4
4
  "globals": {
5
- "userlist": "[1,2,3,4,5,6]"
5
+ "Quanju2": "test2",
6
+ "a": "quanju",
7
+ "Quanju1": "test"
6
8
  },
7
9
  "project": {
8
10
  "request": {
9
11
  "header": {
10
12
  "parameter": [
11
- {
12
- "param_id": "29f000c66464000",
13
- "description": "",
14
- "field_type": "string",
15
- "is_checked": 1,
16
- "key": "haha",
17
- "value": "123",
18
- "not_null": 1,
19
- "schema": {
20
- "type": "string"
21
- }
22
- },
23
13
  {
24
14
  "key": "Accept",
25
15
  "value": "*/*",
@@ -82,27 +72,42 @@ module.exports ={
82
72
  "name": "默认服务",
83
73
  "sort": 1000,
84
74
  "uri": ""
75
+ },
76
+ "44a04516ec01000": {
77
+ "server_id": "44a04516ec01000",
78
+ "name": "服务2",
79
+ "sort": 2000,
80
+ "uri": "cc.apipost.cc:6002/post"
81
+ },
82
+ "44a04588b401000": {
83
+ "server_id": "44a04588b401000",
84
+ "name": "服务3",
85
+ "sort": 3000,
86
+ "uri": ""
85
87
  }
86
88
  },
87
89
  "environment": {
88
- "account": "123456",
89
- "baseUrl": "https://echo.apipost.cn/",
90
- "key": "value"
90
+ "1111": "2222",
91
+ "GraphQL": "https://countries.trevorblades.com/",
92
+ "H-code": "AD",
93
+ "Houzhixing": "222",
94
+ "Yuzhixing": "111111",
95
+ "a": "环境",
96
+ "ccc": "test"
91
97
  }
92
98
  },
93
99
  "cookies": {
94
100
  "switch": 1,
95
101
  "data": [
96
102
  {
97
- "key": "aliyungf_tc",
98
- "value": "9349f07976a4f959a65c2c0d715f1695b6de2d722fe97c08bb23d8452ef5d151",
103
+ "project_id": "449ee12ee401000",
104
+ "cookie_id": "a07f7c57a300d",
99
105
  "path": "/",
100
- "httpOnly": true,
101
- "creation": "2025-05-09T08:17:28.907Z",
102
- "name": "aliyungf_tc",
103
- "cookie_id": "212f6549b643f2",
104
- "domain": "op.juhe.cn",
105
- "project_id": "26623ba1a864000"
106
+ "key": "newCookie_1",
107
+ "value": "valuevaluevaluevaluevaluevaluevalue",
108
+ "domain": "https://httpbin.org",
109
+ "expires": "Tue, 21 Apr 2026 08:40:09 GMT",
110
+ "maxAge": ""
106
111
  },
107
112
  {
108
113
  "key": "liveCookie",
@@ -112,11 +117,11 @@ module.exports ={
112
117
  "path": "/",
113
118
  "secure": true,
114
119
  "httpOnly": true,
115
- "creation": "2025-05-14T06:45:42.930Z",
120
+ "creation": "2025-04-24T08:34:57.284Z",
116
121
  "name": "liveCookie",
117
- "cookie_id": "27803afb76400a",
118
- "expires": "Wed, 14 May 2025 06:47:43 GMT",
119
- "project_id": "26623ba1a864000"
122
+ "cookie_id": "a1aa4827a30dc",
123
+ "expires": "Thu, 24 Apr 2025 08:36:57 GMT",
124
+ "project_id": "449ee12ee401000"
120
125
  },
121
126
  {
122
127
  "key": "loseCookie",
@@ -126,71 +131,134 @@ module.exports ={
126
131
  "path": "/",
127
132
  "secure": true,
128
133
  "httpOnly": true,
129
- "creation": "2025-05-14T06:45:42.930Z",
134
+ "creation": "2025-04-24T08:34:57.284Z",
130
135
  "name": "loseCookie",
131
- "cookie_id": "27803afb76400b",
132
- "expires": "Wed, 14 May 2025 06:45:43 GMT",
133
- "project_id": "26623ba1a864000"
136
+ "cookie_id": "a1aa482ba30dd",
137
+ "expires": "Thu, 24 Apr 2025 08:34:57 GMT",
138
+ "project_id": "449ee12ee401000"
139
+ },
140
+ {
141
+ "key": "BD_NOT_HTTPS",
142
+ "value": "1",
143
+ "maxAge": 300,
144
+ "path": "/",
145
+ "creation": "2025-04-22T03:08:02.407Z",
146
+ "name": "BD_NOT_HTTPS",
147
+ "cookie_id": "b058ba17a3070",
148
+ "domain": "www.baidu.com",
149
+ "expires": "Tue, 22 Apr 2025 03:13:03 GMT",
150
+ "project_id": "449ee12ee401000"
151
+ },
152
+ {
153
+ "key": "BDSVRTM",
154
+ "value": "4",
155
+ "path": "/",
156
+ "creation": "2025-04-22T03:09:53.849Z",
157
+ "name": "BDSVRTM",
158
+ "cookie_id": "b05ddb1fa3079",
159
+ "domain": "www.baidu.com",
160
+ "project_id": "449ee12ee401000"
161
+ },
162
+ {
163
+ "key": "BD_HOME",
164
+ "value": "1",
165
+ "path": "/",
166
+ "creation": "2025-04-22T03:09:53.849Z",
167
+ "name": "BD_HOME",
168
+ "cookie_id": "b05ddb1fa307a",
169
+ "domain": "www.baidu.com",
170
+ "project_id": "449ee12ee401000"
171
+ },
172
+ {
173
+ "key": "BIDUPSID",
174
+ "value": "84078AD8954AC3C0E8CE44C8451A8CEC",
175
+ "expires": "Sun, 10 May 2093 06:22:10 GMT",
176
+ "maxAge": 2147483647,
177
+ "domain": "baidu.com",
178
+ "path": "/",
179
+ "creation": "2025-04-22T03:08:02.407Z",
180
+ "name": "BIDUPSID",
181
+ "cookie_id": "b058ba17a3071",
182
+ "project_id": "449ee12ee401000"
183
+ },
184
+ {
185
+ "key": "PSTM",
186
+ "value": "1745291282",
187
+ "expires": "Sun, 10 May 2093 06:22:10 GMT",
188
+ "maxAge": 2147483647,
189
+ "domain": "baidu.com",
190
+ "path": "/",
191
+ "creation": "2025-04-22T03:08:02.408Z",
192
+ "name": "PSTM",
193
+ "cookie_id": "b058ba17a3072",
194
+ "project_id": "449ee12ee401000"
195
+ },
196
+ {
197
+ "key": "BAIDUID",
198
+ "value": "301699BF1D4C1204DF96F5EA21DB3233:FG=1",
199
+ "expires": "Wed, 22 Apr 2026 03:09:55 GMT",
200
+ "maxAge": 31536000,
201
+ "domain": "baidu.com",
202
+ "path": "/",
203
+ "extensions": [
204
+ "version=1",
205
+ "comment=bd"
206
+ ],
207
+ "creation": "2025-04-22T03:09:53.849Z",
208
+ "name": "BAIDUID",
209
+ "cookie_id": "b058ba17a3073",
210
+ "project_id": "449ee12ee401000"
211
+ },
212
+ {
213
+ "key": "H_PS_PSSID",
214
+ "value": "60279_61027_61675_62325_62639_62833_62868_62880_62889_62905_62928_62969_62955_63019",
215
+ "expires": "2026-04-22T03:09:53.000Z",
216
+ "domain": "baidu.com",
217
+ "path": "/",
218
+ "creation": "2025-04-22T03:09:53.849Z",
219
+ "name": "H_PS_PSSID",
220
+ "cookie_id": "b05ddb1fa3078",
221
+ "project_id": "449ee12ee401000"
134
222
  }
135
223
  ]
136
224
  },
137
225
  "system_configs": {
138
226
  "send_timeout": 0,
139
227
  "auto_redirect": 1,
140
- "max_redirect_time": 5,
141
- "auto_gen_mock_url": -1,
228
+ "max_redirect_time": 6,
229
+ "auto_gen_mock_url": 1,
142
230
  "request_param_auto_json": 1,
143
231
  "proxy": {
144
- "type": -1,
145
- "envfirst": -1,
146
- "bypass": [
147
- "export https_proxy=http://127.0.0.1:7890 http_proxy=http://127.0.0.1:7890 all_proxy=socks5://127.0.0.1:7890"
148
- ],
232
+ "type": 2,
233
+ "envfirst": 1,
234
+ "bypass": [],
149
235
  "protocols": [
150
- "https",
151
- "http"
236
+ "http",
237
+ "https"
152
238
  ],
153
239
  "auth": {
154
240
  "authenticate": -1,
155
- "host": "127.0.0.1:7890",
241
+ "host": "114.242.33.198:80",
156
242
  "username": "",
157
243
  "password": ""
158
244
  }
159
245
  },
160
246
  "ca_cert": {
161
- "open": 1,
162
- "path": ""
247
+ "open": -1,
248
+ "path": "",
249
+ "base64": ""
163
250
  },
164
251
  "client_cert": {
165
- "https://apipost.cn:443": {
252
+ "https://cc.apipost.cc:6003": {
166
253
  "crt": {
254
+ "file_base64": "data:application/x-x509-ca-cert;base64,LS0tLS1CRUdJTiBDRVJUSUZJQ0FURS0tLS0tCk1JSURuVENDQW9VQ0ZFcDd4Z3J2VVhteWEzTEdmcEFpenRNUkJvN3ZNQTBHQ1NxR1NJYjNEUUVCQ3dVQU1JR0sKTVFzd0NRWURWUVFHRXdKRFRqRVFNQTRHQTFVRUNBd0hRbVZwYW1sdVp6RVFNQTRHQTFVRUJ3d0hRbVZwYW1sdQpaekVRTUE0R0ExVUVDZ3dIWVhCcGNHOXpkREVNTUFvR0ExVUVDd3dEWVhCME1SWXdGQVlEVlFRRERBMWpZeTVoCmNHbHdiM04wTG1Oak1SOHdIUVlKS29aSWh2Y05BUWtCRmhCaFpHMXBia0JoY0dsd2IzTjBMbU5qTUI0WERUSXoKTVRJeE1UQTVOREl4TmxvWERUTXpNVEl3T0RBNU5ESXhObG93Z1lveEN6QUpCZ05WQkFZVEFrTk9NUkF3RGdZRApWUVFJREFkQ1pXbHFhVzVuTVJBd0RnWURWUVFIREFkQ1pXbHFhVzVuTVE4d0RRWURWUVFLREFaaGNHbHZjM1F4CkREQUtCZ05WQkFzTUEyRndkREVXTUJRR0ExVUVBd3dOWTJNdVlYQnBjRzl6ZEM1all6RWdNQjRHQ1NxR1NJYjMKRFFFSkFSWVJZMnhwWlc1MFFHRndhWEJ2YzNRdVkyTXdnZ0VpTUEwR0NTcUdTSWIzRFFFQkFRVUFBNElCRHdBdwpnZ0VLQW9JQkFRRG5DalNwV2MvVEovcXg2ZHRCRUlKeHhpME0wTWc1M091U0lNK2dMVnNseTl4SVFTTndGWGhrCi8vRzhTOVl0d2lnMHpwZVNLUlhyNi9tdklQcjlsY3RBakRrZzQ4Q1BQSk5YYVo1RTdQVkRYbThtTXhhS2RBeXEKZVBkT2w2bGJ0a0pWRTB0cElWTFo4UkhEOWU4VFdiNENMNFBUSzkrNFhVSElEUU1FTUdNbWFnRUVRd3ordDdSTQpMZDVvcVAxdHVUdlhBbmlUbmU4TnZhYVQ3NDlqcFhYb3lnV29FaVcwOGJ3NmI2TmZwVVEyeFBsSkdrc2tiblRhCisyTWVqb1ZrSlpDbDFlOUhOYXV2a085WjhQamRYMG9nZTM0OE5pZW83amNDWWhBUmttanVJanhiMU1kU3dPdjcKMTVWS3EwcFFwbjNzVHJrWTVqdjZEeis3dWhSaXVnN2pBZ01CQUFFd0RRWUpLb1pJaHZjTkFRRUxCUUFEZ2dFQgpBRGFCdG10NHVPaVpoVlpHdmo1Tko2RUhUUFNGZGxBaVd6U2tiSWllV2RIY1NhK0J3K2xBM1kyalJsYnZNUVVaCndiL21jaFRtNjFJRmlKbnYvN1h2MGtmMkJxUzkyMURXenJHa3FWQk5zRUdIMEdhWGVHMVMwL1pkNXg1RE4zMlEKRW9IRE95K2lOeDlwRzA2cy8ybUlGY1E3eXQ0cW9acXFQZUg4U3VIamZOanlnZnZFUGxiYUJHb0Y4V1dneFluLwp3TzlFK2pYN3VvdlZDWXVrY3NyaEprZzJwK3o5MUFVU3p2NlpTbHlnK3pGM2kyM1Q0ZXA5VDhwRTV2eXE3UlFnClNPT3BQd25uN0d5UWd2UzREbU5LMHkyazc5ZUdGb3VnTWxnS3g1Um5nMUQxNEd0ZFcvMlE0WGxNa2tHZ1ZsR2IKRVRkcGlES1JKWjNTTDJPZ1RsSFpibWM9Ci0tLS0tRU5EIENFUlRJRklDQVRFLS0tLS0K",
167
255
  "file_name": "client (1).crt",
168
- "file_url": "",
169
- "file_base64": "data:application/x-x509-ca-cert;base64,LS0tLS1CRUdJTiBDRVJUSUZJQ0FURS0tLS0tCk1JSURuVENDQW9VQ0ZFcDd4Z3J2VVhteWEzTEdmcEFpenRNUkJvN3ZNQTBHQ1NxR1NJYjNEUUVCQ3dVQU1JR0sKTVFzd0NRWURWUVFHRXdKRFRqRVFNQTRHQTFVRUNBd0hRbVZwYW1sdVp6RVFNQTRHQTFVRUJ3d0hRbVZwYW1sdQpaekVRTUE0R0ExVUVDZ3dIWVhCcGNHOXpkREVNTUFvR0ExVUVDd3dEWVhCME1SWXdGQVlEVlFRRERBMWpZeTVoCmNHbHdiM04wTG1Oak1SOHdIUVlKS29aSWh2Y05BUWtCRmhCaFpHMXBia0JoY0dsd2IzTjBMbU5qTUI0WERUSXoKTVRJeE1UQTVOREl4TmxvWERUTXpNVEl3T0RBNU5ESXhObG93Z1lveEN6QUpCZ05WQkFZVEFrTk9NUkF3RGdZRApWUVFJREFkQ1pXbHFhVzVuTVJBd0RnWURWUVFIREFkQ1pXbHFhVzVuTVE4d0RRWURWUVFLREFaaGNHbHZjM1F4CkREQUtCZ05WQkFzTUEyRndkREVXTUJRR0ExVUVBd3dOWTJNdVlYQnBjRzl6ZEM1all6RWdNQjRHQ1NxR1NJYjMKRFFFSkFSWVJZMnhwWlc1MFFHRndhWEJ2YzNRdVkyTXdnZ0VpTUEwR0NTcUdTSWIzRFFFQkFRVUFBNElCRHdBdwpnZ0VLQW9JQkFRRG5DalNwV2MvVEovcXg2ZHRCRUlKeHhpME0wTWc1M091U0lNK2dMVnNseTl4SVFTTndGWGhrCi8vRzhTOVl0d2lnMHpwZVNLUlhyNi9tdklQcjlsY3RBakRrZzQ4Q1BQSk5YYVo1RTdQVkRYbThtTXhhS2RBeXEKZVBkT2w2bGJ0a0pWRTB0cElWTFo4UkhEOWU4VFdiNENMNFBUSzkrNFhVSElEUU1FTUdNbWFnRUVRd3ordDdSTQpMZDVvcVAxdHVUdlhBbmlUbmU4TnZhYVQ3NDlqcFhYb3lnV29FaVcwOGJ3NmI2TmZwVVEyeFBsSkdrc2tiblRhCisyTWVqb1ZrSlpDbDFlOUhOYXV2a085WjhQamRYMG9nZTM0OE5pZW83amNDWWhBUmttanVJanhiMU1kU3dPdjcKMTVWS3EwcFFwbjNzVHJrWTVqdjZEeis3dWhSaXVnN2pBZ01CQUFFd0RRWUpLb1pJaHZjTkFRRUxCUUFEZ2dFQgpBRGFCdG10NHVPaVpoVlpHdmo1Tko2RUhUUFNGZGxBaVd6U2tiSWllV2RIY1NhK0J3K2xBM1kyalJsYnZNUVVaCndiL21jaFRtNjFJRmlKbnYvN1h2MGtmMkJxUzkyMURXenJHa3FWQk5zRUdIMEdhWGVHMVMwL1pkNXg1RE4zMlEKRW9IRE95K2lOeDlwRzA2cy8ybUlGY1E3eXQ0cW9acXFQZUg4U3VIamZOanlnZnZFUGxiYUJHb0Y4V1dneFluLwp3TzlFK2pYN3VvdlZDWXVrY3NyaEprZzJwK3o5MUFVU3p2NlpTbHlnK3pGM2kyM1Q0ZXA5VDhwRTV2eXE3UlFnClNPT3BQd25uN0d5UWd2UzREbU5LMHkyazc5ZUdGb3VnTWxnS3g1Um5nMUQxNEd0ZFcvMlE0WGxNa2tHZ1ZsR2IKRVRkcGlES1JKWjNTTDJPZ1RsSFpibWM9Ci0tLS0tRU5EIENFUlRJRklDQVRFLS0tLS0K"
170
- },
171
- "key": {
172
- "file_url": "",
173
- "file_base64": "data:application/x-x509-ca-cert;base64,LS0tLS1CRUdJTiBDRVJUSUZJQ0FURS0tLS0tCk1JSUR0VENDQXAyZ0F3SUJBZ0lKQU9ueUNxV09FeCtsTUEwR0NTcUdTSWIzRFFFQkJRVUFNRVV4Q3pBSkJnTlYKQkFZVEFrRlZNUk13RVFZRFZRUUlFd3BUYjIxbExWTjBZWFJsTVNFd0h3WURWUVFLRXhoSmJuUmxjbTVsZENCWAphV1JuYVhSeklGQjBlU0JNZEdRd0hoY05NVFV3TnpFek1UUTFNRE16V2hjTk1UVXdPREV5TVRRMU1ETXpXakJGCk1Rc3dDUVlEVlFRR0V3SkJWVEVUTUJFR0ExVUVDQk1LVTI5dFpTMVRkR0YwWlRFaE1COEdBMVVFQ2hNWVNXNTAKWlhKdVpYUWdWMmxrWjJsMGN5QlFkSGtnVEhSa01JSUJJakFOQmdrcWhraUc5dzBCQVFFRkFBT0NBUThBTUlJQgpDZ0tDQVFFQTB1cVdPWUF1ZmgxSHZkNUw0WE8zUEZOZituZE8vVGczUGJEcWl4UTZEYUpqcUw2ZWh6eFJYeHJyCmR6U0N6RlN2b2FPRzFNaUpyazlIdUYvYUVyZ0ExdHFnb0crSmx1VVlKOG9VNzRtVFk3Zmt3dHhPUnpoT2JkSmoKbFoxNm5jNGVEaXBjVWtjUFluY0tQSGxsbnR1MXVDSUNNMkl5TmprcUFNd3lPSERrTGNFY0VyQ1F3YVdlSi80VgpGS3NVdndwbTR0cmRwWVcrelUwWkhUdWtuWkhybERrY1l2ZlE2VSt5bjI3ZEZBUWRwb3A5Q0FyNjdsL2Ftd01RCm9ZT1hqVGx6bWFZOURvRHRVazlCY0tGSUhhVDQwbGJFSDV2OTlXeDNaNE1MQ2JhNHRuQ2oyRTFzZ2UrUWFWcEEKck1aazNDTjN0amM5VUlWa2JGdUZmeUNaK1owSlpRSURBUUFCbzRHbk1JR2tNQjBHQTFVZERnUVdCQlNzandwVAp6Q2YzOGhUQmNsRFNvWEFNSkp6Q1NEQjFCZ05WSFNNRWJqQnNnQlNzandwVHpDZjM4aFRCY2xEU29YQU1KSnpDClNLRkpwRWN3UlRFTE1Ba0dBMVVFQmhNQ1FWVXhFekFSQmdOVkJBZ1RDbE52YldVdFUzUmhkR1V4SVRBZkJnTlYKQkFvVEdFbHVkR1Z5Ym1WMElGZHBaR2RwZEhNZ1VIUjVJRXgwWklJSkFPbnlDcVdPRXgrbE1Bd0dBMVVkRXdRRgpNQU1CQWY4d0RRWUpLb1pJaHZjTkFRRUZCUUFEZ2dFQkFJSk52M3cza0VqSGt5QkNiaURwcFFBczdDU2s1SGJzCisrV0EyZm9sdzZaM3I2SUxHWEpVYmhwaitQZ0V1YTVUTW5ja2VEL0lvMXViYnNqaWZ2eHo1UUJrTDIySHQwdkIKTFJpR1FkMGt2TTFUUkFTUyt2UFk1L096Q2hkUVFPamh0UG5Vc0h2dEVwTHV5SkRlV2QyZTV5cFoveDdmMTZRVApwRG16ajRLNG00YkZPUitSWlQxUkN2SjFDclU1VWR0UzBpWVoyczJmVVJJclQ3Qmo5dDhhdmpReTFxQnNzd1E1CkdFUERTRWVoRC96QzkzMlJsSUw4cGhja05kTHRvZGlMaVlSRU8rTGt6MHdDeWpVTG0vYXVMeWlrNzZ1WlZaR3gKTEJwRUp4WU81bmQvYVViYjNsS3liSXJZYXlkSWJBVk5CcWR1SWxaV3M1cmgwclJFOUZNaDcrbz0KLS0tLS1FTkQgQ0VSVElGSUNBVEUtLS0tLQo=",
174
- "file_name": "cert.pem"
175
- },
176
- "password": "1234",
177
- "pfx": {
178
- "file_base64": "data:application/x-iwork-keynote-sffkey;base64,LS0tLS1CRUdJTiBSU0EgUFJJVkFURSBLRVktLS0tLQpNSUlFcEFJQkFBS0NBUUVBNXdvMHFWblAweWY2c2VuYlFSQ0NjY1l0RE5ESU9kenJraURQb0MxYkpjdmNTRUVqCmNCVjRaUC94dkV2V0xjSW9OTTZYa2lrVjYrdjVyeUQ2L1pYTFFJdzVJT1BBanp5VFYybWVST3oxUTE1dkpqTVcKaW5RTXFuajNUcGVwVzdaQ1ZSTkxhU0ZTMmZFUncvWHZFMW0rQWkrRDB5dmZ1RjFCeUEwREJEQmpKbW9CQkVNTQovcmUwVEMzZWFLajliYms3MXdKNGs1M3ZEYjJtaysrUFk2VjE2TW9GcUJJbHRQRzhPbStqWDZWRU5zVDVTUnBMCkpHNTAydnRqSG82RlpDV1FwZFh2UnpXcnI1RHZXZkQ0M1Y5S0lIdCtQRFlucU80M0FtSVFFWkpvN2lJOFc5VEgKVXNEcis5ZVZTcXRLVUtaOTdFNjVHT1k3K2c4L3U3b1VZcm9PNHdJREFRQUJBb0lCQUNXckQwenhIS1lqcFlidQpSdFlEMkJDdXE5ZWtEcEVJaU12SlY3Q1kxSHlFRVVVaWdhR2Jqb2FCQ0N1WC9iSjJMbEgxd05hT3BrbFJydUt6CnNOZzVYT3NJTWFSQUhidjh0MVVRSGtMRWszUkphRHZGSm82cVB3cG9NSUg2emh6cXlVUFBvb0xnY1A2aGhERDcKM3QrN3lQUFlSVmpmbFZrY3MwWG5nUzlrcURXeDBXZStWOGFJMVJCOXVIbUdDcmo4djFZaHFSRWl2dXl4eUVXQwpZSkowVFRqSVhtMC92OVNJRE5FTjJKVExkYmlIdDBvQm9PZk1CWk5MSmhjSWI4cHkvTW5SYW9IN1EvN2VZQllQClNnMzJycXYvZlNjZGhWakltbTNyWEtaclV5NlErcUpNNGp1MCtpV0E4MzRzd2NiaGZhbU5XR2tLcUYzVmo4WEEKendGbkVjRUNnWUVBK056RHpxb3Vlbk9iZE5ORTdFa2FaTDc4TFFlL0VhTkYycHlhS2IvWTFac2F5U2ozSUMxbAp2RCs0V1hQamZJVWl3SldGeEtONGZyVnlldCtZWGhOZ0p3eU9wb2gyZmlaNzExR0paSWRudGFDV3lmRnpGVS8rClZQUm1yUUxIWS9MNHRhdnByTzlhTHBYVWVSYlc0NXVBbUZ5YUtJck1qSkFzMnFpeitKYUxGbUVDZ1lFQTdhcVUKOEE5SHpkVDFsQzB1ZlRoNG1Cdm43enpvSXJHNmY3amhvRVZuazEwWmozKy9pNEFmWEw3VHRuQmtXaTJvZElKbApDb2ZXdGRWbUxvTkhpOER0ZldyWFkzOWhra0ZSSEo5Y01qNEozcEJmaVp0ZUJyaFhucDg1c0xDS0pnWGVNZDNEClhkZVl1TERuczR3Y3FZTnpkbDRQL2cvRGl5RFB5Y29tc3NmdzQ4TUNnWUVBc2pUVWVwOWZIUXpBRzQ1V1lxV08Kb3Vvb2hzNXZRbUFhMjRzYzBoeXhWM1QwWDJ4WVd0Qm5jOEJsY0prT0k5THFxZUhvb29FMC9mZE0vVFEwVmRtbQpGeEJrN2xmMkVpdllycjJTbDB4bk5hYkRrK1MwdG1STUNlWGh5SzZldmJIMTY1SXBpVTcwMHpzenBXcDNneEdOCnFvMVZUd2JscHhwdkpEMStjdHJLeXNFQ2dZRUFyMlo0T3Q4Y0lCVnVGS2h2cWV5Mlc1UWt6UlJIUWV1bTkwSU0KQ2t1T2tGeGlVOXgxRWRCQjFTSGtmNzFjNG96VnlQNis4VkdsTFZkTDdVSG4ySVZQQUlPTWFKc0crSGlLRXpTdApSMHN2MzNqdmVWQVh5Wi9jMG0weWwyc0MyZUwweEJxbFo2bUl4YTJSb3BuaVFWeUpKeTl1WUJOa1BsYTk0Mi8wCnRYY0lHaDhDZ1lCbHJBaVdIOGU4aEhkWjdxTjNOTk51cVkvQjdJWFNPdzFIMEVKbjd3Ui9tZElzalFRYkJGL3gKa05YNndvZDVFeHBzRkVER2lJQ0RiQm1FbW5oaU1TWFBXREhoalZKSkFSUG5sL2Fxc0tNemt0dXdic29DbGQ2OApkT1hkbHNtbGhYZVdrcGp5ZUdCREZ5Y3hPdW80M3F6VzdOOUNpQ285dXBuNGZrSEg3Si95Znc9PQotLS0tLUVORCBSU0EgUFJJVkFURSBLRVktLS0tLQo=",
179
- "file_name": "client (1).key",
180
256
  "file_url": ""
181
257
  },
182
- "HOST": "https://apipost.cn:443"
183
- },
184
- "https://*:443": {
185
- "crt": {
186
- "file_name": "client (1).crt",
187
- "file_url": "",
188
- "file_base64": "data:application/x-x509-ca-cert;base64,LS0tLS1CRUdJTiBDRVJUSUZJQ0FURS0tLS0tCk1JSURuVENDQW9VQ0ZFcDd4Z3J2VVhteWEzTEdmcEFpenRNUkJvN3ZNQTBHQ1NxR1NJYjNEUUVCQ3dVQU1JR0sKTVFzd0NRWURWUVFHRXdKRFRqRVFNQTRHQTFVRUNBd0hRbVZwYW1sdVp6RVFNQTRHQTFVRUJ3d0hRbVZwYW1sdQpaekVRTUE0R0ExVUVDZ3dIWVhCcGNHOXpkREVNTUFvR0ExVUVDd3dEWVhCME1SWXdGQVlEVlFRRERBMWpZeTVoCmNHbHdiM04wTG1Oak1SOHdIUVlKS29aSWh2Y05BUWtCRmhCaFpHMXBia0JoY0dsd2IzTjBMbU5qTUI0WERUSXoKTVRJeE1UQTVOREl4TmxvWERUTXpNVEl3T0RBNU5ESXhObG93Z1lveEN6QUpCZ05WQkFZVEFrTk9NUkF3RGdZRApWUVFJREFkQ1pXbHFhVzVuTVJBd0RnWURWUVFIREFkQ1pXbHFhVzVuTVE4d0RRWURWUVFLREFaaGNHbHZjM1F4CkREQUtCZ05WQkFzTUEyRndkREVXTUJRR0ExVUVBd3dOWTJNdVlYQnBjRzl6ZEM1all6RWdNQjRHQ1NxR1NJYjMKRFFFSkFSWVJZMnhwWlc1MFFHRndhWEJ2YzNRdVkyTXdnZ0VpTUEwR0NTcUdTSWIzRFFFQkFRVUFBNElCRHdBdwpnZ0VLQW9JQkFRRG5DalNwV2MvVEovcXg2ZHRCRUlKeHhpME0wTWc1M091U0lNK2dMVnNseTl4SVFTTndGWGhrCi8vRzhTOVl0d2lnMHpwZVNLUlhyNi9tdklQcjlsY3RBakRrZzQ4Q1BQSk5YYVo1RTdQVkRYbThtTXhhS2RBeXEKZVBkT2w2bGJ0a0pWRTB0cElWTFo4UkhEOWU4VFdiNENMNFBUSzkrNFhVSElEUU1FTUdNbWFnRUVRd3ordDdSTQpMZDVvcVAxdHVUdlhBbmlUbmU4TnZhYVQ3NDlqcFhYb3lnV29FaVcwOGJ3NmI2TmZwVVEyeFBsSkdrc2tiblRhCisyTWVqb1ZrSlpDbDFlOUhOYXV2a085WjhQamRYMG9nZTM0OE5pZW83amNDWWhBUmttanVJanhiMU1kU3dPdjcKMTVWS3EwcFFwbjNzVHJrWTVqdjZEeis3dWhSaXVnN2pBZ01CQUFFd0RRWUpLb1pJaHZjTkFRRUxCUUFEZ2dFQgpBRGFCdG10NHVPaVpoVlpHdmo1Tko2RUhUUFNGZGxBaVd6U2tiSWllV2RIY1NhK0J3K2xBM1kyalJsYnZNUVVaCndiL21jaFRtNjFJRmlKbnYvN1h2MGtmMkJxUzkyMURXenJHa3FWQk5zRUdIMEdhWGVHMVMwL1pkNXg1RE4zMlEKRW9IRE95K2lOeDlwRzA2cy8ybUlGY1E3eXQ0cW9acXFQZUg4U3VIamZOanlnZnZFUGxiYUJHb0Y4V1dneFluLwp3TzlFK2pYN3VvdlZDWXVrY3NyaEprZzJwK3o5MUFVU3p2NlpTbHlnK3pGM2kyM1Q0ZXA5VDhwRTV2eXE3UlFnClNPT3BQd25uN0d5UWd2UzREbU5LMHkyazc5ZUdGb3VnTWxnS3g1Um5nMUQxNEd0ZFcvMlE0WGxNa2tHZ1ZsR2IKRVRkcGlES1JKWjNTTDJPZ1RsSFpibWM9Ci0tLS0tRU5EIENFUlRJRklDQVRFLS0tLS0K"
189
- },
190
258
  "key": {
191
- "file_name": "",
259
+ "file_name": "client (1).key",
192
260
  "file_url": "",
193
- "file_base64": ""
261
+ "file_base64": "data:application/octet-stream;base64,LS0tLS1CRUdJTiBSU0EgUFJJVkFURSBLRVktLS0tLQpNSUlFcEFJQkFBS0NBUUVBNXdvMHFWblAweWY2c2VuYlFSQ0NjY1l0RE5ESU9kenJraURQb0MxYkpjdmNTRUVqCmNCVjRaUC94dkV2V0xjSW9OTTZYa2lrVjYrdjVyeUQ2L1pYTFFJdzVJT1BBanp5VFYybWVST3oxUTE1dkpqTVcKaW5RTXFuajNUcGVwVzdaQ1ZSTkxhU0ZTMmZFUncvWHZFMW0rQWkrRDB5dmZ1RjFCeUEwREJEQmpKbW9CQkVNTQovcmUwVEMzZWFLajliYms3MXdKNGs1M3ZEYjJtaysrUFk2VjE2TW9GcUJJbHRQRzhPbStqWDZWRU5zVDVTUnBMCkpHNTAydnRqSG82RlpDV1FwZFh2UnpXcnI1RHZXZkQ0M1Y5S0lIdCtQRFlucU80M0FtSVFFWkpvN2lJOFc5VEgKVXNEcis5ZVZTcXRLVUtaOTdFNjVHT1k3K2c4L3U3b1VZcm9PNHdJREFRQUJBb0lCQUNXckQwenhIS1lqcFlidQpSdFlEMkJDdXE5ZWtEcEVJaU12SlY3Q1kxSHlFRVVVaWdhR2Jqb2FCQ0N1WC9iSjJMbEgxd05hT3BrbFJydUt6CnNOZzVYT3NJTWFSQUhidjh0MVVRSGtMRWszUkphRHZGSm82cVB3cG9NSUg2emh6cXlVUFBvb0xnY1A2aGhERDcKM3QrN3lQUFlSVmpmbFZrY3MwWG5nUzlrcURXeDBXZStWOGFJMVJCOXVIbUdDcmo4djFZaHFSRWl2dXl4eUVXQwpZSkowVFRqSVhtMC92OVNJRE5FTjJKVExkYmlIdDBvQm9PZk1CWk5MSmhjSWI4cHkvTW5SYW9IN1EvN2VZQllQClNnMzJycXYvZlNjZGhWakltbTNyWEtaclV5NlErcUpNNGp1MCtpV0E4MzRzd2NiaGZhbU5XR2tLcUYzVmo4WEEKendGbkVjRUNnWUVBK056RHpxb3Vlbk9iZE5ORTdFa2FaTDc4TFFlL0VhTkYycHlhS2IvWTFac2F5U2ozSUMxbAp2RCs0V1hQamZJVWl3SldGeEtONGZyVnlldCtZWGhOZ0p3eU9wb2gyZmlaNzExR0paSWRudGFDV3lmRnpGVS8rClZQUm1yUUxIWS9MNHRhdnByTzlhTHBYVWVSYlc0NXVBbUZ5YUtJck1qSkFzMnFpeitKYUxGbUVDZ1lFQTdhcVUKOEE5SHpkVDFsQzB1ZlRoNG1Cdm43enpvSXJHNmY3amhvRVZuazEwWmozKy9pNEFmWEw3VHRuQmtXaTJvZElKbApDb2ZXdGRWbUxvTkhpOER0ZldyWFkzOWhra0ZSSEo5Y01qNEozcEJmaVp0ZUJyaFhucDg1c0xDS0pnWGVNZDNEClhkZVl1TERuczR3Y3FZTnpkbDRQL2cvRGl5RFB5Y29tc3NmdzQ4TUNnWUVBc2pUVWVwOWZIUXpBRzQ1V1lxV08Kb3Vvb2hzNXZRbUFhMjRzYzBoeXhWM1QwWDJ4WVd0Qm5jOEJsY0prT0k5THFxZUhvb29FMC9mZE0vVFEwVmRtbQpGeEJrN2xmMkVpdllycjJTbDB4bk5hYkRrK1MwdG1STUNlWGh5SzZldmJIMTY1SXBpVTcwMHpzenBXcDNneEdOCnFvMVZUd2JscHhwdkpEMStjdHJLeXNFQ2dZRUFyMlo0T3Q4Y0lCVnVGS2h2cWV5Mlc1UWt6UlJIUWV1bTkwSU0KQ2t1T2tGeGlVOXgxRWRCQjFTSGtmNzFjNG96VnlQNis4VkdsTFZkTDdVSG4ySVZQQUlPTWFKc0crSGlLRXpTdApSMHN2MzNqdmVWQVh5Wi9jMG0weWwyc0MyZUwweEJxbFo2bUl4YTJSb3BuaVFWeUpKeTl1WUJOa1BsYTk0Mi8wCnRYY0lHaDhDZ1lCbHJBaVdIOGU4aEhkWjdxTjNOTk51cVkvQjdJWFNPdzFIMEVKbjd3Ui9tZElzalFRYkJGL3gKa05YNndvZDVFeHBzRkVER2lJQ0RiQm1FbW5oaU1TWFBXREhoalZKSkFSUG5sL2Fxc0tNemt0dXdic29DbGQ2OApkT1hkbHNtbGhYZVdrcGp5ZUdCREZ5Y3hPdW80M3F6VzdOOUNpQ285dXBuNGZrSEg3Si95Znc9PQotLS0tLUVORCBSU0EgUFJJVkFURSBLRVktLS0tLQo="
194
262
  },
195
263
  "password": "",
196
264
  "pfx": {
@@ -198,56 +266,43 @@ module.exports ={
198
266
  "file_name": "",
199
267
  "file_url": ""
200
268
  },
201
- "HOST": "https://*:443"
269
+ "HOST": "https://cc.apipost.cc:6003"
202
270
  }
203
271
  }
204
272
  },
205
- "custom_functions": {},
273
+ "custom_functions": {
274
+ "fn_test2": "return text % 2 == 0;\n//使用 return text % 2 == 0; 来判断 text 是否为偶数。如果 text 是偶数,函数返回 true;如果 text 是奇数,函数返回 false。 ",
275
+ "fn_test1": "\n// 返回函數處理後的text,text為函數的入參 \nreturn text.includes(\"To be\");",
276
+ "fn_test4": "// 创建 Date 对象\nconst date = new Date(text);\nconsole.log(text)\n// 获取各个时间组件\nconst year = date.getFullYear();\nconst month = String(date.getMonth() + 1).padStart(2, '0'); // 月份从0开始,需要加1,并补零\nconst day = String(date.getDate()).padStart(2, '0');\nconst hours = String(date.getHours()).padStart(2, '0');\nconst minutes = String(date.getMinutes()).padStart(2, '0');\nconst seconds = String(date.getSeconds()).padStart(2, '0');\n\n//返回函数处理后的text,text为函数的入参\ntext = `${year}-${month}-${day} ${hours}:${minutes}:${seconds}`;\n\nreturn text;"
277
+ },
206
278
  "collection": [
207
279
  {
208
- "target_id": "4651a1e0e06e000",
280
+ "target_id": "a1c7d6e7a3109",
209
281
  "target_type": "api",
210
- "parent_id": "4651a1dffc6e000",
211
- "name": "测试接口",
282
+ "parent_id": "0",
283
+ "name": "get接口",
212
284
  "request": {
213
285
  "auth": {
214
286
  "type": "inherit"
215
287
  },
216
288
  "body": {
217
- "mode": "urlencoded",
218
- "parameter": [
219
- {
220
- "description": "",
221
- "field_type": "string",
222
- "is_checked": 1,
223
- "key": "name",
224
- "value": "",
225
- "not_null": 1,
226
- "schema": {
227
- "type": "string",
228
- "enum": [
229
- "11",
230
- "22"
231
- ]
232
- },
233
- "param_id": "2780323bb71007"
234
- }
235
- ],
289
+ "mode": "json",
290
+ "parameter": [],
236
291
  "raw": "",
237
292
  "raw_parameter": [],
238
293
  "raw_schema": {
239
294
  "type": "object"
240
295
  },
241
- "binary": {}
296
+ "binary": null
242
297
  },
243
298
  "pre_tasks": [],
244
299
  "post_tasks": [
245
300
  {
246
301
  "type": "customScript",
247
- "id": "2789708c764018",
248
- "name": "自定义脚本",
249
302
  "enabled": 1,
250
- "data": ""
303
+ "data": "console.log(\"123\")",
304
+ "name": "自定义脚本",
305
+ "id": "a1d382efa3150"
251
306
  }
252
307
  ],
253
308
  "header": {
@@ -255,7 +310,20 @@ module.exports ={
255
310
  },
256
311
  "query": {
257
312
  "query_add_equal": 1,
258
- "parameter": []
313
+ "parameter": [
314
+ {
315
+ "param_id": "b01413279b02d",
316
+ "description": "",
317
+ "field_type": "string",
318
+ "is_checked": 1,
319
+ "key": "2",
320
+ "not_null": 1,
321
+ "value": "{{name}}",
322
+ "schema": {
323
+ "type": "string"
324
+ }
325
+ }
326
+ ]
259
327
  },
260
328
  "cookie": {
261
329
  "cookie_encode": 1,
@@ -265,127 +333,115 @@ module.exports ={
265
333
  "parameter": []
266
334
  }
267
335
  },
268
- "parents": [
269
- {
270
- "target_id": "4651a1dffc6e000",
271
- "target_type": "folder"
272
- },
273
- {
274
- "target_id": "4651a1dfdc6e000",
275
- "target_type": "folder"
276
- }
277
- ],
336
+ "parents": [],
278
337
  "method": "GET",
279
338
  "protocol": "http/1.1",
280
- "url": "http://cc.apipost.cc:6002/httpcode/201",
281
- "pre_url": ""
282
- },
283
- {
284
- "target_id": "4651a1dffc6e000",
285
- "target_type": "folder",
286
- "parent_id": "4651a1dfdc6e000",
287
- "name": "测试Controller",
288
- "request": {
289
- "auth": {
290
- "type": "inherit"
291
- },
292
- "pre_tasks": [],
293
- "post_tasks": [],
294
- "body": {
295
- "parameter": []
296
- },
297
- "header": {
298
- "parameter": []
299
- },
300
- "query": {
301
- "parameter": []
302
- },
303
- "cookie": {
304
- "parameter": []
305
- }
306
- },
307
- "parents": [
308
- {
309
- "target_id": "4651a1dfdc6e000",
310
- "target_type": "folder"
311
- }
312
- ],
313
- "server_id": "0",
314
- "pre_url": ""
315
- },
316
- {
317
- "target_id": "4651a1dfdc6e000",
318
- "target_type": "folder",
319
- "parent_id": "0",
320
- "name": "security-ljk",
321
- "request": {
322
- "auth": {
323
- "type": "inherit"
324
- },
325
- "pre_tasks": [],
326
- "post_tasks": [],
327
- "body": {
328
- "parameter": []
329
- },
330
- "header": {
331
- "parameter": []
332
- },
333
- "query": {
334
- "parameter": []
335
- },
336
- "cookie": {
337
- "parameter": []
338
- }
339
- },
340
- "parents": [],
341
- "server_id": "0",
339
+ "url": "go.apipost.cn?2={{name}}",
342
340
  "pre_url": ""
343
341
  }
344
342
  ],
345
- "database_configs": {
346
- "29bc16819464000": {
347
- "type": "mysql",
348
- "ssh": {
349
- "enable": -1,
350
- "host": "",
351
- "port": 22,
352
- "auth_type": 1,
353
- "username": "",
354
- "password": "",
355
- "private_key": "",
356
- "passphrase": ""
357
- },
358
- "dbconfig": {
359
- "host": "10.10.10.20",
360
- "port": 1521,
361
- "user": "root",
362
- "password": "12333333333",
363
- "database": "apipost",
364
- "auth_source": ""
365
- }
366
- }
367
- },
343
+ "database_configs": {},
368
344
  "name": "未命名测试用例",
369
345
  "ignore_error": -1,
370
346
  "enable_sandbox": -1,
371
347
  "iterationCount": 1,
372
348
  "sleep": 0,
373
- "testing_id": "27896681f64013",
374
- "iterates_data_id": "0",
375
- "iterationData": []
349
+ "testing_id": "de1d0c97a3006",
350
+ "iterates_data_id": "de1d6b93a3008",
351
+ "iterationData": [
352
+ {
353
+ "url": "q"
354
+ },
355
+ {
356
+ "url": "w"
357
+ },
358
+ {
359
+ "url": "e"
360
+ },
361
+ {
362
+ "url": "ut"
363
+ },
364
+ {
365
+ "url": "g"
366
+ },
367
+ {
368
+ "url": "h"
369
+ },
370
+ {
371
+ "url": "k"
372
+ }
373
+ ]
376
374
  },
377
375
  "test_events": [
378
376
  {
379
377
  "type": "api",
380
- "auto_sync": true,
381
- "test_id": "27896681f64013",
382
- "event_id": "27896af9764014",
378
+ "auto_sync": false,
379
+ "test_id": "de1d0c97a3006",
380
+ "event_id": "de1f430fa3023",
383
381
  "enabled": 1,
384
382
  "data": {
385
- "target_id": "4651a1e0e06e000",
386
- "project_id": "26623ba1a864000",
387
- "parent_id": "4651a1dffc6e000",
388
- "target_type": "api"
383
+ "target_id": "a1c7d6e7a3109",
384
+ "project_id": "449ee12ee401000",
385
+ "parent_id": "0",
386
+ "target_type": "api",
387
+ "apiData": {
388
+ "name": "get接口",
389
+ "method": "GET",
390
+ "protocol": "http/1.1",
391
+ "url": "go.apipost.cn?2={{url}}",
392
+ "request": {
393
+ "auth": {
394
+ "type": "inherit"
395
+ },
396
+ "body": {
397
+ "mode": "json",
398
+ "parameter": [],
399
+ "raw": "",
400
+ "raw_parameter": [],
401
+ "raw_schema": {
402
+ "type": "object"
403
+ },
404
+ "binary": null
405
+ },
406
+ "pre_tasks": [],
407
+ "post_tasks": [
408
+ {
409
+ "type": "customScript",
410
+ "enabled": 1,
411
+ "data": "console.log(\"123\")",
412
+ "name": "自定义脚本",
413
+ "id": "a1d382efa3150"
414
+ }
415
+ ],
416
+ "header": {
417
+ "parameter": []
418
+ },
419
+ "query": {
420
+ "query_add_equal": 1,
421
+ "parameter": [
422
+ {
423
+ "param_id": "b01413279b02d",
424
+ "description": "",
425
+ "field_type": "string",
426
+ "is_checked": 1,
427
+ "key": "2",
428
+ "not_null": 1,
429
+ "value": "{{url}}",
430
+ "schema": {
431
+ "type": "string"
432
+ }
433
+ }
434
+ ]
435
+ },
436
+ "cookie": {
437
+ "cookie_encode": 1,
438
+ "parameter": []
439
+ },
440
+ "restful": {
441
+ "parameter": []
442
+ }
443
+ }
444
+ }
389
445
  }
390
446
  }
391
447
  ]
package/test.js DELETED
@@ -1,125 +0,0 @@
1
- const _ = require('lodash');
2
- const { run, request2HAR } = require('./index');
3
-
4
- // 以下为调用示例
5
- const callback = (res) => {
6
- // console.warn("callback", JSON.stringify(res, null, 2))
7
- }
8
-
9
-
10
- /// pip start
11
- (function () {
12
- const net = require('net');
13
- const fs = require('fs');
14
- const path = require('path');
15
- const mainProcessSocketPath = path.join(__dirname, 'my_socket.sock');
16
- const { DatabaseQuery } = require('database-query');
17
- _.set(process, 'env.main_process_socket_path', mainProcessSocketPath);
18
-
19
- // 如果套接字文件已存在,删除它
20
- if (fs.existsSync(mainProcessSocketPath)) {
21
- fs.unlinkSync(mainProcessSocketPath);
22
- }
23
-
24
- const server = net.createServer((socket) => {
25
- socket.on('data', async (stream) => {
26
- const { action, data } = JSON.parse(String(Buffer.from(stream)));
27
- try {
28
- switch (action) {
29
- case 'queryDatabase':
30
- const { dbconfig, query } = data;
31
- const result = await DatabaseQuery(dbconfig, query);
32
- socket.write(JSON.stringify(result));
33
- break;
34
- case 'execute':
35
- const { execSync } = require('child_process');
36
- const { file, args, option } = data;
37
- const ext = file.split('.').pop().toLowerCase();
38
- let command;
39
- try {
40
- switch (ext) {
41
- case 'jar':
42
- const jarPath = path.resolve(__dirname, `jar-main-1.0-SNAPSHOT.jar`);
43
- const { className, method } = option || {};
44
- if (_.isObject(option)) {
45
- if (_.isString(className) && _.isString(method)) {
46
- let para = new Buffer(JSON.stringify({ methodName: method, args: args })).toString("base64");
47
- command = `java -jar ${jarPath} ${file} ${className} '${para}'`;
48
- }
49
- } else {
50
- command = `java -jar ${file} ${_.join(_.map(args, JSON.stringify), " ")}`;
51
- }
52
-
53
- break;
54
- case 'php':
55
- command = `php -f ${file} ${args.join(' ')}`;
56
- break;
57
- case 'js':
58
- command = `node ${file} ${args.join(' ')}`;
59
- break;
60
- case 'py':
61
- command = `python ${file} ${args.join(' ')}`;
62
- break;
63
- case 'py3':
64
- command = `python3 ${file} ${args.join(' ')}`;
65
- break;
66
- case 'bsh':
67
- command = `bsh ${file} ${args.join(' ')}`;
68
- break;
69
- case 'go':
70
- command = `go run ${file} ${args.join(' ')}`;
71
- break;
72
- case 'sh':
73
- command = `sh ${file} ${args.join(' ')}`;
74
- break;
75
- case 'rb':
76
- case 'ruby':
77
- command = `ruby ${file} ${args.join(' ')}`;
78
- break;
79
- case 'lua':
80
- command = `lua ${file} ${args.join(' ')}`;
81
- break;
82
- case 'rs':
83
- command = `rustc ${file} && ./${file.replace(/\.rs$/, '')} ${args.join(' ')}`;
84
- break;
85
- case 'bat':
86
- command = `${file} ${args.join(' ')}`;
87
- break;
88
- case 'ps1':
89
- command = `powershell -File ${file} ${args.join(' ')}`;
90
- break;
91
- default:
92
- throw new Error(`Unsupported file suffixes <${ext}>`);
93
- }
94
-
95
- const isWindows = process.platform === 'win32';
96
- const options = _.assign(isWindows ? { encoding: 'cp936' } : { encoding: 'utf8' }, option);
97
- const output = execSync(command, options);
98
- socket.write(JSON.stringify({
99
- err: 'success',
100
- result: String(output)
101
- }));
102
- } catch (e) {
103
- socket.write(JSON.stringify({
104
- err: 'error',
105
- result: String(e)
106
- }));
107
- }
108
- break;
109
- }
110
-
111
- } catch (e) {
112
- socket.write(JSON.stringify(e));
113
- }
114
-
115
- });
116
- });
117
-
118
- server.listen(mainProcessSocketPath, () => {
119
- // console.log(`服务器已启动,监听路径 ${mainProcessSocketPath}`);
120
- });
121
- })();
122
- //pip end
123
- const { option, test_events } = require('./tmp/request'); // tmp todo...
124
- run(test_events, option, callback);
125
- // request2HAR(test_events, option)