runner-runtime 1.0.63 → 1.0.65

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
@@ -2033,7 +2033,7 @@ const initRequestJson = (event, option) => {
2033
2033
 
2034
2034
  // 获取前置url
2035
2035
  let envPreUrl = _.trim(_.get(requestJson, 'pre_url', ''));
2036
- if (envPreUrl != '') {
2036
+ if (envPreUrl == '') {
2037
2037
  envPreUrl = _.trim(_.get(_.find(_.get(option, `env.env_pre_urls`), (server) => {
2038
2038
  return server?.server_id == envServerID;
2039
2039
  }), 'uri'));
@@ -2152,6 +2152,14 @@ module.exports = (event, option, callback, eventRuntimeData, eventResultList) =>
2152
2152
  event_id: event?.event_id
2153
2153
  });
2154
2154
  } else {
2155
+ // init eventRuntimeData for apis
2156
+ _.set(eventRuntimeData, [event?.event_id, 'exception'], null)
2157
+ _.set(eventRuntimeData, [event?.event_id, 'error'], null)
2158
+ _.set(eventRuntimeData, [event?.event_id, 'console'], [])
2159
+ _.set(eventRuntimeData, [event?.event_id, 'assertions'], [])
2160
+ _.set(eventRuntimeData, [event?.event_id, 'visualizer'], { error: null, processed_template: "" })
2161
+
2162
+ // start run request
2155
2163
  run.start({
2156
2164
  // script error
2157
2165
  exception(cursor, err) {
@@ -2174,7 +2182,7 @@ module.exports = (event, option, callback, eventRuntimeData, eventResultList) =>
2174
2182
  {
2175
2183
  time,
2176
2184
  "level": "error",
2177
- "args": [String(err)]
2185
+ "args": [String(err?.message)]
2178
2186
  }
2179
2187
  )
2180
2188
  }
@@ -2197,7 +2205,6 @@ module.exports = (event, option, callback, eventRuntimeData, eventResultList) =>
2197
2205
  _.set(eventRuntimeData, [event?.event_id, "console"], []);
2198
2206
  }
2199
2207
  const time = Date.now()
2200
- console.log({ time, level, args })
2201
2208
  eventRuntimeData[event?.event_id].console.push({ time, level, args })
2202
2209
  },
2203
2210
 
@@ -2257,9 +2264,22 @@ module.exports = (event, option, callback, eventRuntimeData, eventResultList) =>
2257
2264
  error_type: 'prerequest',
2258
2265
  message: String(err)
2259
2266
  })
2267
+
2268
+ if (_.isUndefined(_.get(eventRuntimeData, [event?.event_id, "console"]))) {
2269
+ _.set(eventRuntimeData, [event?.event_id, "console"], []);
2270
+ }
2271
+
2272
+ const time = Date.now()
2273
+ eventRuntimeData[event?.event_id].console.push(
2274
+ {
2275
+ time,
2276
+ "level": "error",
2277
+ "args": [String(err?.message)]
2278
+ }
2279
+ )
2260
2280
  }
2261
2281
  }
2262
-
2282
+ // console.log(String(request?.url))
2263
2283
  const requestOptions = convert2EchoRequest(request, requestJson, postmanJSON, history);
2264
2284
  _.set(eventRuntimeData, [event?.event_id, "request"], requestOptions);
2265
2285
 
@@ -2384,7 +2404,7 @@ module.exports = (event, option, callback, eventRuntimeData, eventResultList) =>
2384
2404
  event_id: event?.event_id,
2385
2405
  }
2386
2406
  );
2387
-
2407
+ console.log(JSON.stringify(finalRequestResult?.data?.console, null, 2), 111111111)
2388
2408
  if (scene === 'auto_test' || requestJson?.target_type === 'sse') { // 纯粹为了兼容老的数据返回格式 todo...
2389
2409
  if (_.includes(['assert', 'assert_visual', 'api', 'sample', 'script', 'sql'], event?.type)) {
2390
2410
  eventResultList.push(_.assign(camelCaseToSnakeCase(_.get(_.cloneDeep(eventRuntimeData), event?.event_id)), _.pick(event, ['type', 'event_id', 'test_id', 'iteration_id'])));
package/events/index.js CHANGED
@@ -3,7 +3,7 @@ const atomicSleep = require("atomic-sleep"),
3
3
  aTools = require("apipost-tools"),
4
4
  JSON5 = require('json5'),
5
5
  _ = require('lodash'),
6
- { returnBoolean, variableReplaceForCondition, variableReplace,getVariableActedUpon, convertEndRuntimeState, repeatArrayToLength } = require('../libs/utils');
6
+ { returnBoolean, variableReplaceForCondition, variableReplace, getVariableActedUpon, convertEndRuntimeState, repeatArrayToLength } = require('../libs/utils');
7
7
  const executeApi = require('./api'),
8
8
  executeWait = require('./wait');
9
9
 
@@ -337,7 +337,7 @@ const executeEvent = async (event, option, callback, eventRuntimeData, eventResu
337
337
  if (_.isUndefined(event.event_id) && option?.scene === 'http_request') {
338
338
  _.set(event, 'event_id', _.get(event, 'data.target_id'))
339
339
  }
340
-
340
+
341
341
  _.assign(eventRuntimeData?.variables?.iterationData, _.get(option, 'iterationData'))
342
342
  _.set(eventRuntimeData, [event.event_id, 'iteration_id'], aTools.snowflakeId());
343
343
 
package/libs/utils.js CHANGED
@@ -312,7 +312,7 @@ const getCaseInsensitive = (object, keyToFind) => {
312
312
 
313
313
  const variableReplace = (str, variables, option) => {
314
314
  const AllVars = getInsideVariables();
315
- ["globals", "_globals", "environment", "variables"].forEach((varName) => {
315
+ ["globals", "_globals", "environment", "iterationData", "variables"].forEach((varName) => {
316
316
  _.assign(AllVars, _.get(variables, `${varName}`))
317
317
  })
318
318
 
@@ -335,7 +335,7 @@ const variableReplaceForCondition = (str, variables, option) => {
335
335
  }
336
336
 
337
337
  const AllVars = getInsideVariables();
338
- ["globals", "_globals", "environment", "variables"].forEach((varName) => {
338
+ ["globals", "_globals", "environment", "iterationData", "variables"].forEach((varName) => {
339
339
  _.assign(AllVars, _.get(variables, `${varName}`))
340
340
  })
341
341
 
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "runner-runtime",
3
- "version": "1.0.63",
3
+ "version": "1.0.65",
4
4
  "description": "runner-runtime.",
5
5
  "main": "index.js",
6
6
  "scripts": {
package/tmp/request.js CHANGED
@@ -1,7 +1,9 @@
1
- module.exports = {
1
+ module.exports ={
2
2
  "option": {
3
3
  "scene": "http_request",
4
- "globals": {},
4
+ "globals": {
5
+ "name": ""
6
+ },
5
7
  "project": {
6
8
  "request": {
7
9
  "header": {
@@ -53,335 +55,182 @@ module.exports = {
53
55
  }
54
56
  },
55
57
  "env": {
56
- "env_id": "1",
57
- "env_name": "默认环境",
58
- "env_pre_url": "",
58
+ "env_id": "f5e217678302b",
59
+ "env_name": "演示环境",
60
+ "env_pre_url": "https://demo-api.apipost.cn/api",
59
61
  "env_pre_urls": {
60
62
  "1": {
61
63
  "server_id": "1",
62
64
  "name": "默认服务",
63
65
  "sort": 1000,
64
- "uri": ""
66
+ "uri": "https://demo-api.apipost.cn/api"
65
67
  },
66
68
  "default": {
67
69
  "server_id": "1",
68
70
  "name": "默认服务",
69
71
  "sort": 1000,
70
- "uri": ""
71
- },
72
- "44e76996a401000": {
73
- "server_id": "44e76996a401000",
74
- "name": "222",
75
- "sort": 2000,
76
- "uri": ""
72
+ "uri": "https://demo-api.apipost.cn/api"
77
73
  }
78
74
  },
79
- "environment": {
80
- "code": "0",
81
- "key": 1
82
- }
75
+ "environment": {}
83
76
  },
84
77
  "cookies": {
85
78
  "switch": 1,
86
- "data": [
87
- {
88
- "key": "liveCookie",
89
- "value": "gin",
90
- "maxAge": 120,
91
- "domain": "go.apipost.cn",
92
- "path": "/",
93
- "secure": true,
94
- "httpOnly": true,
95
- "creation": "2025-04-24T21:16:40.033Z",
96
- "name": "liveCookie",
97
- "cookie_id": "e70e48b7d6003",
98
- "expires": "Thu, 24 Apr 2025 21:18:40 GMT",
99
- "project_id": "2adc267c9064000"
100
- },
101
- {
102
- "key": "loseCookie",
103
- "value": "gin",
104
- "maxAge": 0,
105
- "domain": "go.apipost.cn",
106
- "path": "/",
107
- "secure": true,
108
- "httpOnly": true,
109
- "creation": "2025-04-24T21:16:40.033Z",
110
- "name": "loseCookie",
111
- "cookie_id": "e70e48b7d6004",
112
- "expires": "Thu, 24 Apr 2025 21:16:40 GMT",
113
- "project_id": "2adc267c9064000"
114
- }
115
- ]
79
+ "data": []
116
80
  },
117
81
  "system_configs": {
118
82
  "send_timeout": 0,
119
- "auto_redirect": 1,
83
+ "auto_redirect": -1,
120
84
  "max_redirect_time": 5,
121
- "auto_gen_mock_url": -1,
122
- "request_param_auto_json": 1,
85
+ "auto_gen_mock_url": 1,
86
+ "request_param_auto_json": -1,
123
87
  "proxy": {
124
88
  "type": 2,
125
- "envfirst": -1,
126
- "bypass": [
127
- "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"
128
- ],
89
+ "envfirst": 1,
90
+ "bypass": [],
129
91
  "protocols": [
130
- "https",
131
92
  "http"
132
93
  ],
133
94
  "auth": {
134
95
  "authenticate": -1,
135
- "host": "127.0.0.1:7890",
96
+ "host": "",
136
97
  "username": "",
137
98
  "password": ""
138
99
  }
139
100
  },
140
101
  "ca_cert": {
141
- "open": 1,
102
+ "open": -1,
142
103
  "path": "",
143
- "base64": "data:application/x-x509-ca-cert;base64,LS0tLS1CRUdJTiBDRVJUSUZJQ0FURS0tLS0tCk1JSUR0VENDQXAyZ0F3SUJBZ0lKQU9ueUNxV09FeCtsTUEwR0NTcUdTSWIzRFFFQkJRVUFNRVV4Q3pBSkJnTlYKQkFZVEFrRlZNUk13RVFZRFZRUUlFd3BUYjIxbExWTjBZWFJsTVNFd0h3WURWUVFLRXhoSmJuUmxjbTVsZENCWAphV1JuYVhSeklGQjBlU0JNZEdRd0hoY05NVFV3TnpFek1UUTFNRE16V2hjTk1UVXdPREV5TVRRMU1ETXpXakJGCk1Rc3dDUVlEVlFRR0V3SkJWVEVUTUJFR0ExVUVDQk1LVTI5dFpTMVRkR0YwWlRFaE1COEdBMVVFQ2hNWVNXNTAKWlhKdVpYUWdWMmxrWjJsMGN5QlFkSGtnVEhSa01JSUJJakFOQmdrcWhraUc5dzBCQVFFRkFBT0NBUThBTUlJQgpDZ0tDQVFFQTB1cVdPWUF1ZmgxSHZkNUw0WE8zUEZOZituZE8vVGczUGJEcWl4UTZEYUpqcUw2ZWh6eFJYeHJyCmR6U0N6RlN2b2FPRzFNaUpyazlIdUYvYUVyZ0ExdHFnb0crSmx1VVlKOG9VNzRtVFk3Zmt3dHhPUnpoT2JkSmoKbFoxNm5jNGVEaXBjVWtjUFluY0tQSGxsbnR1MXVDSUNNMkl5TmprcUFNd3lPSERrTGNFY0VyQ1F3YVdlSi80VgpGS3NVdndwbTR0cmRwWVcrelUwWkhUdWtuWkhybERrY1l2ZlE2VSt5bjI3ZEZBUWRwb3A5Q0FyNjdsL2Ftd01RCm9ZT1hqVGx6bWFZOURvRHRVazlCY0tGSUhhVDQwbGJFSDV2OTlXeDNaNE1MQ2JhNHRuQ2oyRTFzZ2UrUWFWcEEKck1aazNDTjN0amM5VUlWa2JGdUZmeUNaK1owSlpRSURBUUFCbzRHbk1JR2tNQjBHQTFVZERnUVdCQlNzandwVAp6Q2YzOGhUQmNsRFNvWEFNSkp6Q1NEQjFCZ05WSFNNRWJqQnNnQlNzandwVHpDZjM4aFRCY2xEU29YQU1KSnpDClNLRkpwRWN3UlRFTE1Ba0dBMVVFQmhNQ1FWVXhFekFSQmdOVkJBZ1RDbE52YldVdFUzUmhkR1V4SVRBZkJnTlYKQkFvVEdFbHVkR1Z5Ym1WMElGZHBaR2RwZEhNZ1VIUjVJRXgwWklJSkFPbnlDcVdPRXgrbE1Bd0dBMVVkRXdRRgpNQU1CQWY4d0RRWUpLb1pJaHZjTkFRRUZCUUFEZ2dFQkFJSk52M3cza0VqSGt5QkNiaURwcFFBczdDU2s1SGJzCisrV0EyZm9sdzZaM3I2SUxHWEpVYmhwaitQZ0V1YTVUTW5ja2VEL0lvMXViYnNqaWZ2eHo1UUJrTDIySHQwdkIKTFJpR1FkMGt2TTFUUkFTUyt2UFk1L096Q2hkUVFPamh0UG5Vc0h2dEVwTHV5SkRlV2QyZTV5cFoveDdmMTZRVApwRG16ajRLNG00YkZPUitSWlQxUkN2SjFDclU1VWR0UzBpWVoyczJmVVJJclQ3Qmo5dDhhdmpReTFxQnNzd1E1CkdFUERTRWVoRC96QzkzMlJsSUw4cGhja05kTHRvZGlMaVlSRU8rTGt6MHdDeWpVTG0vYXVMeWlrNzZ1WlZaR3gKTEJwRUp4WU81bmQvYVViYjNsS3liSXJZYXlkSWJBVk5CcWR1SWxaV3M1cmgwclJFOUZNaDcrbz0KLS0tLS1FTkQgQ0VSVElGSUNBVEUtLS0tLQo="
104
+ "base64": ""
144
105
  },
145
- "client_cert": {
146
- "https://*:443": {
147
- "pfx": {
148
- "file_base64": "",
149
- "file_name": "",
150
- "file_url": ""
151
- },
152
- "crt": {
153
- "file_base64": "data:application/x-x509-ca-cert;base64,LS0tLS1CRUdJTiBDRVJUSUZJQ0FURS0tLS0tCk1JSURuVENDQW9VQ0ZFcDd4Z3J2VVhteWEzTEdmcEFpenRNUkJvN3ZNQTBHQ1NxR1NJYjNEUUVCQ3dVQU1JR0sKTVFzd0NRWURWUVFHRXdKRFRqRVFNQTRHQTFVRUNBd0hRbVZwYW1sdVp6RVFNQTRHQTFVRUJ3d0hRbVZwYW1sdQpaekVRTUE0R0ExVUVDZ3dIWVhCcGNHOXpkREVNTUFvR0ExVUVDd3dEWVhCME1SWXdGQVlEVlFRRERBMWpZeTVoCmNHbHdiM04wTG1Oak1SOHdIUVlKS29aSWh2Y05BUWtCRmhCaFpHMXBia0JoY0dsd2IzTjBMbU5qTUI0WERUSXoKTVRJeE1UQTVOREl4TmxvWERUTXpNVEl3T0RBNU5ESXhObG93Z1lveEN6QUpCZ05WQkFZVEFrTk9NUkF3RGdZRApWUVFJREFkQ1pXbHFhVzVuTVJBd0RnWURWUVFIREFkQ1pXbHFhVzVuTVE4d0RRWURWUVFLREFaaGNHbHZjM1F4CkREQUtCZ05WQkFzTUEyRndkREVXTUJRR0ExVUVBd3dOWTJNdVlYQnBjRzl6ZEM1all6RWdNQjRHQ1NxR1NJYjMKRFFFSkFSWVJZMnhwWlc1MFFHRndhWEJ2YzNRdVkyTXdnZ0VpTUEwR0NTcUdTSWIzRFFFQkFRVUFBNElCRHdBdwpnZ0VLQW9JQkFRRG5DalNwV2MvVEovcXg2ZHRCRUlKeHhpME0wTWc1M091U0lNK2dMVnNseTl4SVFTTndGWGhrCi8vRzhTOVl0d2lnMHpwZVNLUlhyNi9tdklQcjlsY3RBakRrZzQ4Q1BQSk5YYVo1RTdQVkRYbThtTXhhS2RBeXEKZVBkT2w2bGJ0a0pWRTB0cElWTFo4UkhEOWU4VFdiNENMNFBUSzkrNFhVSElEUU1FTUdNbWFnRUVRd3ordDdSTQpMZDVvcVAxdHVUdlhBbmlUbmU4TnZhYVQ3NDlqcFhYb3lnV29FaVcwOGJ3NmI2TmZwVVEyeFBsSkdrc2tiblRhCisyTWVqb1ZrSlpDbDFlOUhOYXV2a085WjhQamRYMG9nZTM0OE5pZW83amNDWWhBUmttanVJanhiMU1kU3dPdjcKMTVWS3EwcFFwbjNzVHJrWTVqdjZEeis3dWhSaXVnN2pBZ01CQUFFd0RRWUpLb1pJaHZjTkFRRUxCUUFEZ2dFQgpBRGFCdG10NHVPaVpoVlpHdmo1Tko2RUhUUFNGZGxBaVd6U2tiSWllV2RIY1NhK0J3K2xBM1kyalJsYnZNUVVaCndiL21jaFRtNjFJRmlKbnYvN1h2MGtmMkJxUzkyMURXenJHa3FWQk5zRUdIMEdhWGVHMVMwL1pkNXg1RE4zMlEKRW9IRE95K2lOeDlwRzA2cy8ybUlGY1E3eXQ0cW9acXFQZUg4U3VIamZOanlnZnZFUGxiYUJHb0Y4V1dneFluLwp3TzlFK2pYN3VvdlZDWXVrY3NyaEprZzJwK3o5MUFVU3p2NlpTbHlnK3pGM2kyM1Q0ZXA5VDhwRTV2eXE3UlFnClNPT3BQd25uN0d5UWd2UzREbU5LMHkyazc5ZUdGb3VnTWxnS3g1Um5nMUQxNEd0ZFcvMlE0WGxNa2tHZ1ZsR2IKRVRkcGlES1JKWjNTTDJPZ1RsSFpibWM9Ci0tLS0tRU5EIENFUlRJRklDQVRFLS0tLS0K",
154
- "file_name": "client (1).crt",
155
- "file_url": ""
156
- },
157
- "key": {
158
- "file_base64": "",
159
- "file_name": "",
160
- "file_url": ""
161
- },
162
- "password": "",
163
- "HOST": "https://*:443"
164
- },
165
- "https://apipost.cn:443": {
166
- "key": {
167
- "file_base64": "data:application/x-x509-ca-cert;base64,LS0tLS1CRUdJTiBDRVJUSUZJQ0FURS0tLS0tCk1JSUR0VENDQXAyZ0F3SUJBZ0lKQU9ueUNxV09FeCtsTUEwR0NTcUdTSWIzRFFFQkJRVUFNRVV4Q3pBSkJnTlYKQkFZVEFrRlZNUk13RVFZRFZRUUlFd3BUYjIxbExWTjBZWFJsTVNFd0h3WURWUVFLRXhoSmJuUmxjbTVsZENCWAphV1JuYVhSeklGQjBlU0JNZEdRd0hoY05NVFV3TnpFek1UUTFNRE16V2hjTk1UVXdPREV5TVRRMU1ETXpXakJGCk1Rc3dDUVlEVlFRR0V3SkJWVEVUTUJFR0ExVUVDQk1LVTI5dFpTMVRkR0YwWlRFaE1COEdBMVVFQ2hNWVNXNTAKWlhKdVpYUWdWMmxrWjJsMGN5QlFkSGtnVEhSa01JSUJJakFOQmdrcWhraUc5dzBCQVFFRkFBT0NBUThBTUlJQgpDZ0tDQVFFQTB1cVdPWUF1ZmgxSHZkNUw0WE8zUEZOZituZE8vVGczUGJEcWl4UTZEYUpqcUw2ZWh6eFJYeHJyCmR6U0N6RlN2b2FPRzFNaUpyazlIdUYvYUVyZ0ExdHFnb0crSmx1VVlKOG9VNzRtVFk3Zmt3dHhPUnpoT2JkSmoKbFoxNm5jNGVEaXBjVWtjUFluY0tQSGxsbnR1MXVDSUNNMkl5TmprcUFNd3lPSERrTGNFY0VyQ1F3YVdlSi80VgpGS3NVdndwbTR0cmRwWVcrelUwWkhUdWtuWkhybERrY1l2ZlE2VSt5bjI3ZEZBUWRwb3A5Q0FyNjdsL2Ftd01RCm9ZT1hqVGx6bWFZOURvRHRVazlCY0tGSUhhVDQwbGJFSDV2OTlXeDNaNE1MQ2JhNHRuQ2oyRTFzZ2UrUWFWcEEKck1aazNDTjN0amM5VUlWa2JGdUZmeUNaK1owSlpRSURBUUFCbzRHbk1JR2tNQjBHQTFVZERnUVdCQlNzandwVAp6Q2YzOGhUQmNsRFNvWEFNSkp6Q1NEQjFCZ05WSFNNRWJqQnNnQlNzandwVHpDZjM4aFRCY2xEU29YQU1KSnpDClNLRkpwRWN3UlRFTE1Ba0dBMVVFQmhNQ1FWVXhFekFSQmdOVkJBZ1RDbE52YldVdFUzUmhkR1V4SVRBZkJnTlYKQkFvVEdFbHVkR1Z5Ym1WMElGZHBaR2RwZEhNZ1VIUjVJRXgwWklJSkFPbnlDcVdPRXgrbE1Bd0dBMVVkRXdRRgpNQU1CQWY4d0RRWUpLb1pJaHZjTkFRRUZCUUFEZ2dFQkFJSk52M3cza0VqSGt5QkNiaURwcFFBczdDU2s1SGJzCisrV0EyZm9sdzZaM3I2SUxHWEpVYmhwaitQZ0V1YTVUTW5ja2VEL0lvMXViYnNqaWZ2eHo1UUJrTDIySHQwdkIKTFJpR1FkMGt2TTFUUkFTUyt2UFk1L096Q2hkUVFPamh0UG5Vc0h2dEVwTHV5SkRlV2QyZTV5cFoveDdmMTZRVApwRG16ajRLNG00YkZPUitSWlQxUkN2SjFDclU1VWR0UzBpWVoyczJmVVJJclQ3Qmo5dDhhdmpReTFxQnNzd1E1CkdFUERTRWVoRC96QzkzMlJsSUw4cGhja05kTHRvZGlMaVlSRU8rTGt6MHdDeWpVTG0vYXVMeWlrNzZ1WlZaR3gKTEJwRUp4WU81bmQvYVViYjNsS3liSXJZYXlkSWJBVk5CcWR1SWxaV3M1cmgwclJFOUZNaDcrbz0KLS0tLS1FTkQgQ0VSVElGSUNBVEUtLS0tLQo=",
168
- "file_name": "cert.pem",
169
- "file_url": ""
170
- },
171
- "password": "1234",
172
- "pfx": {
173
- "file_base64": "data:application/x-iwork-keynote-sffkey;base64,LS0tLS1CRUdJTiBSU0EgUFJJVkFURSBLRVktLS0tLQpNSUlFcEFJQkFBS0NBUUVBNXdvMHFWblAweWY2c2VuYlFSQ0NjY1l0RE5ESU9kenJraURQb0MxYkpjdmNTRUVqCmNCVjRaUC94dkV2V0xjSW9OTTZYa2lrVjYrdjVyeUQ2L1pYTFFJdzVJT1BBanp5VFYybWVST3oxUTE1dkpqTVcKaW5RTXFuajNUcGVwVzdaQ1ZSTkxhU0ZTMmZFUncvWHZFMW0rQWkrRDB5dmZ1RjFCeUEwREJEQmpKbW9CQkVNTQovcmUwVEMzZWFLajliYms3MXdKNGs1M3ZEYjJtaysrUFk2VjE2TW9GcUJJbHRQRzhPbStqWDZWRU5zVDVTUnBMCkpHNTAydnRqSG82RlpDV1FwZFh2UnpXcnI1RHZXZkQ0M1Y5S0lIdCtQRFlucU80M0FtSVFFWkpvN2lJOFc5VEgKVXNEcis5ZVZTcXRLVUtaOTdFNjVHT1k3K2c4L3U3b1VZcm9PNHdJREFRQUJBb0lCQUNXckQwenhIS1lqcFlidQpSdFlEMkJDdXE5ZWtEcEVJaU12SlY3Q1kxSHlFRVVVaWdhR2Jqb2FCQ0N1WC9iSjJMbEgxd05hT3BrbFJydUt6CnNOZzVYT3NJTWFSQUhidjh0MVVRSGtMRWszUkphRHZGSm82cVB3cG9NSUg2emh6cXlVUFBvb0xnY1A2aGhERDcKM3QrN3lQUFlSVmpmbFZrY3MwWG5nUzlrcURXeDBXZStWOGFJMVJCOXVIbUdDcmo4djFZaHFSRWl2dXl4eUVXQwpZSkowVFRqSVhtMC92OVNJRE5FTjJKVExkYmlIdDBvQm9PZk1CWk5MSmhjSWI4cHkvTW5SYW9IN1EvN2VZQllQClNnMzJycXYvZlNjZGhWakltbTNyWEtaclV5NlErcUpNNGp1MCtpV0E4MzRzd2NiaGZhbU5XR2tLcUYzVmo4WEEKendGbkVjRUNnWUVBK056RHpxb3Vlbk9iZE5ORTdFa2FaTDc4TFFlL0VhTkYycHlhS2IvWTFac2F5U2ozSUMxbAp2RCs0V1hQamZJVWl3SldGeEtONGZyVnlldCtZWGhOZ0p3eU9wb2gyZmlaNzExR0paSWRudGFDV3lmRnpGVS8rClZQUm1yUUxIWS9MNHRhdnByTzlhTHBYVWVSYlc0NXVBbUZ5YUtJck1qSkFzMnFpeitKYUxGbUVDZ1lFQTdhcVUKOEE5SHpkVDFsQzB1ZlRoNG1Cdm43enpvSXJHNmY3amhvRVZuazEwWmozKy9pNEFmWEw3VHRuQmtXaTJvZElKbApDb2ZXdGRWbUxvTkhpOER0ZldyWFkzOWhra0ZSSEo5Y01qNEozcEJmaVp0ZUJyaFhucDg1c0xDS0pnWGVNZDNEClhkZVl1TERuczR3Y3FZTnpkbDRQL2cvRGl5RFB5Y29tc3NmdzQ4TUNnWUVBc2pUVWVwOWZIUXpBRzQ1V1lxV08Kb3Vvb2hzNXZRbUFhMjRzYzBoeXhWM1QwWDJ4WVd0Qm5jOEJsY0prT0k5THFxZUhvb29FMC9mZE0vVFEwVmRtbQpGeEJrN2xmMkVpdllycjJTbDB4bk5hYkRrK1MwdG1STUNlWGh5SzZldmJIMTY1SXBpVTcwMHpzenBXcDNneEdOCnFvMVZUd2JscHhwdkpEMStjdHJLeXNFQ2dZRUFyMlo0T3Q4Y0lCVnVGS2h2cWV5Mlc1UWt6UlJIUWV1bTkwSU0KQ2t1T2tGeGlVOXgxRWRCQjFTSGtmNzFjNG96VnlQNis4VkdsTFZkTDdVSG4ySVZQQUlPTWFKc0crSGlLRXpTdApSMHN2MzNqdmVWQVh5Wi9jMG0weWwyc0MyZUwweEJxbFo2bUl4YTJSb3BuaVFWeUpKeTl1WUJOa1BsYTk0Mi8wCnRYY0lHaDhDZ1lCbHJBaVdIOGU4aEhkWjdxTjNOTk51cVkvQjdJWFNPdzFIMEVKbjd3Ui9tZElzalFRYkJGL3gKa05YNndvZDVFeHBzRkVER2lJQ0RiQm1FbW5oaU1TWFBXREhoalZKSkFSUG5sL2Fxc0tNemt0dXdic29DbGQ2OApkT1hkbHNtbGhYZVdrcGp5ZUdCREZ5Y3hPdW80M3F6VzdOOUNpQ285dXBuNGZrSEg3Si95Znc9PQotLS0tLUVORCBSU0EgUFJJVkFURSBLRVktLS0tLQo=",
174
- "file_name": "client (1).key",
175
- "file_url": ""
176
- },
177
- "crt": {
178
- "file_base64": "data:application/x-x509-ca-cert;base64,LS0tLS1CRUdJTiBDRVJUSUZJQ0FURS0tLS0tCk1JSURuVENDQW9VQ0ZFcDd4Z3J2VVhteWEzTEdmcEFpenRNUkJvN3ZNQTBHQ1NxR1NJYjNEUUVCQ3dVQU1JR0sKTVFzd0NRWURWUVFHRXdKRFRqRVFNQTRHQTFVRUNBd0hRbVZwYW1sdVp6RVFNQTRHQTFVRUJ3d0hRbVZwYW1sdQpaekVRTUE0R0ExVUVDZ3dIWVhCcGNHOXpkREVNTUFvR0ExVUVDd3dEWVhCME1SWXdGQVlEVlFRRERBMWpZeTVoCmNHbHdiM04wTG1Oak1SOHdIUVlKS29aSWh2Y05BUWtCRmhCaFpHMXBia0JoY0dsd2IzTjBMbU5qTUI0WERUSXoKTVRJeE1UQTVOREl4TmxvWERUTXpNVEl3T0RBNU5ESXhObG93Z1lveEN6QUpCZ05WQkFZVEFrTk9NUkF3RGdZRApWUVFJREFkQ1pXbHFhVzVuTVJBd0RnWURWUVFIREFkQ1pXbHFhVzVuTVE4d0RRWURWUVFLREFaaGNHbHZjM1F4CkREQUtCZ05WQkFzTUEyRndkREVXTUJRR0ExVUVBd3dOWTJNdVlYQnBjRzl6ZEM1all6RWdNQjRHQ1NxR1NJYjMKRFFFSkFSWVJZMnhwWlc1MFFHRndhWEJ2YzNRdVkyTXdnZ0VpTUEwR0NTcUdTSWIzRFFFQkFRVUFBNElCRHdBdwpnZ0VLQW9JQkFRRG5DalNwV2MvVEovcXg2ZHRCRUlKeHhpME0wTWc1M091U0lNK2dMVnNseTl4SVFTTndGWGhrCi8vRzhTOVl0d2lnMHpwZVNLUlhyNi9tdklQcjlsY3RBakRrZzQ4Q1BQSk5YYVo1RTdQVkRYbThtTXhhS2RBeXEKZVBkT2w2bGJ0a0pWRTB0cElWTFo4UkhEOWU4VFdiNENMNFBUSzkrNFhVSElEUU1FTUdNbWFnRUVRd3ordDdSTQpMZDVvcVAxdHVUdlhBbmlUbmU4TnZhYVQ3NDlqcFhYb3lnV29FaVcwOGJ3NmI2TmZwVVEyeFBsSkdrc2tiblRhCisyTWVqb1ZrSlpDbDFlOUhOYXV2a085WjhQamRYMG9nZTM0OE5pZW83amNDWWhBUmttanVJanhiMU1kU3dPdjcKMTVWS3EwcFFwbjNzVHJrWTVqdjZEeis3dWhSaXVnN2pBZ01CQUFFd0RRWUpLb1pJaHZjTkFRRUxCUUFEZ2dFQgpBRGFCdG10NHVPaVpoVlpHdmo1Tko2RUhUUFNGZGxBaVd6U2tiSWllV2RIY1NhK0J3K2xBM1kyalJsYnZNUVVaCndiL21jaFRtNjFJRmlKbnYvN1h2MGtmMkJxUzkyMURXenJHa3FWQk5zRUdIMEdhWGVHMVMwL1pkNXg1RE4zMlEKRW9IRE95K2lOeDlwRzA2cy8ybUlGY1E3eXQ0cW9acXFQZUg4U3VIamZOanlnZnZFUGxiYUJHb0Y4V1dneFluLwp3TzlFK2pYN3VvdlZDWXVrY3NyaEprZzJwK3o5MUFVU3p2NlpTbHlnK3pGM2kyM1Q0ZXA5VDhwRTV2eXE3UlFnClNPT3BQd25uN0d5UWd2UzREbU5LMHkyazc5ZUdGb3VnTWxnS3g1Um5nMUQxNEd0ZFcvMlE0WGxNa2tHZ1ZsR2IKRVRkcGlES1JKWjNTTDJPZ1RsSFpibWM9Ci0tLS0tRU5EIENFUlRJRklDQVRFLS0tLS0K",
179
- "file_name": "client (1).crt",
180
- "file_url": ""
181
- },
182
- "HOST": "https://apipost.cn:443"
183
- }
184
- }
106
+ "client_cert": {}
185
107
  },
186
108
  "custom_functions": {},
187
109
  "collection": [
188
110
  {
189
- "target_id": "cf94971317030",
111
+ "target_id": "f5e2176783030",
190
112
  "target_type": "api",
191
- "parent_id": "0",
192
- "name": "GET 请求API 副本",
113
+ "parent_id": "f5e217678302f",
114
+ "name": "登录接口token",
193
115
  "request": {
194
116
  "auth": {
195
117
  "type": "inherit"
196
118
  },
197
119
  "body": {
198
- "mode": "urlencoded",
120
+ "mode": "form-data",
199
121
  "parameter": [
200
122
  {
201
- "param_id": "cf59342771004",
202
- "description": "记录对象最后更新的时间,精确到时分秒。\n",
203
- "field_type": "string",
123
+ "param_id": "f5e2171783018",
124
+ "description": "手机号",
125
+ "field_type": "String",
204
126
  "is_checked": 1,
205
- "key": "UpdatedAt",
206
- "not_null": 1,
207
- "value": "2024-10-01 12:00:00",
127
+ "key": "mobile",
128
+ "not_null": -1,
129
+ "value": "17710994566",
208
130
  "content_type": "",
209
131
  "file_name": "",
210
132
  "file_base64": "",
211
133
  "schema": {
212
- "type": "string",
213
- "default": "2024-10-01 12:00:00"
134
+ "type": "string"
214
135
  }
215
136
  },
216
137
  {
217
- "param_id": "d90f4cb771009",
218
- "description": "代表用户的姓氏,是用户个人信息中家族姓氏部分。\n",
219
- "field_type": "string",
138
+ "param_id": "f5e2171783019",
139
+ "description": "验证码",
140
+ "field_type": "String",
220
141
  "is_checked": 1,
221
- "key": "last_name",
222
- "not_null": 1,
223
- "value": "",
142
+ "key": "ver_code",
143
+ "not_null": -1,
144
+ "value": "5643",
224
145
  "content_type": "",
225
146
  "file_name": "",
226
147
  "file_base64": "",
227
- "schema": {
228
- "type": "string",
229
- "default": "张"
230
- }
231
- }
232
- ],
233
- "raw": "",
234
- "raw_parameter": [
235
- {
236
- "param_id": "2b835c6eb86902c",
237
- "description": "用户主键id",
238
- "field_type": "Long",
239
- "is_checked": 1,
240
- "key": "id",
241
- "not_null": 1,
242
- "value": "1"
243
- },
244
- {
245
- "param_id": "2b835c6eb86902d",
246
- "description": "用户主键id",
247
- "field_type": "string",
248
- "is_checked": 1,
249
- "key": "name",
250
- "not_null": 1,
251
- "value": "",
252
148
  "schema": {
253
149
  "type": "string"
254
150
  }
255
151
  }
256
152
  ],
153
+ "raw": "",
154
+ "raw_parameter": [],
257
155
  "raw_schema": {
258
- "type": "object",
259
- "x-refs": {
260
- "d90a9b9b17001": {
261
- "$ref": "#/components/schemas/3eb25347fd6011"
262
- }
263
- },
264
- "x-orders": [
265
- "d90a9b9b17001"
266
- ],
267
- "properties": {}
156
+ "type": "object"
268
157
  },
269
- "binary": {}
158
+ "binary": null
270
159
  },
271
160
  "pre_tasks": [],
272
- "post_tasks": [
161
+ "post_tasks": [],
162
+ "header": {
163
+ "parameter": []
164
+ },
165
+ "query": {
166
+ "query_add_equal": 1,
167
+ "parameter": []
168
+ },
169
+ "cookie": {
170
+ "cookie_encode": 1,
171
+ "parameter": []
172
+ },
173
+ "restful": {
174
+ "parameter": []
175
+ }
176
+ },
177
+ "parents": [
178
+ {
179
+ "target_id": "f5e217678302f",
180
+ "target_type": "folder"
181
+ }
182
+ ],
183
+ "method": "POST",
184
+ "protocol": "http/1.1",
185
+ "url": "/demo/login",
186
+ "pre_url": "https://demo-api.apipost.cn/api"
187
+ },
188
+ {
189
+ "target_id": "f5e217678302f",
190
+ "target_type": "folder",
191
+ "parent_id": "0",
192
+ "name": "新闻App",
193
+ "request": {
194
+ "auth": {
195
+ "type": "inherit"
196
+ },
197
+ "pre_tasks": [
273
198
  {
274
199
  "type": "customScript",
275
- "enabled": -1,
276
- "data": "pm.environment.set(\"code\", 201);\napt.test(\"正文匹配含有字符串\", function () {\n apt.expect(apt.response.text()).to.include(\"期望查找的字符串\");\n });",
200
+ "id": "f5f4d853d640b",
277
201
  "name": "自定义脚本",
278
- "id": "3d53b40ffd6022"
279
- },
280
- {
281
- "type": "database",
282
202
  "enabled": 1,
283
- "data": {
284
- "query": "",
285
- "variables": [],
286
- "connectionId": "2b9e0de71864000",
287
- "isConsoleOutput": -1
288
- },
289
- "name": "数据库",
290
- "id": "bcb573cb17048"
291
- },
292
- {
293
- "type": "assert",
294
- "enabled": -1,
295
- "data": {
296
- "type": "responseJson",
297
- "expression": {
298
- "path": "",
299
- "compareType": "eq",
300
- "compareValue": ""
301
- }
302
- },
303
- "name": "断言",
304
- "id": "bcb5b9931704a"
203
+ "data": "console.log(a)"
305
204
  }
306
205
  ],
206
+ "post_tasks": [],
207
+ "body": {
208
+ "parameter": []
209
+ },
307
210
  "header": {
308
211
  "parameter": []
309
212
  },
310
213
  "query": {
311
- "query_add_equal": 1,
312
- "parameter": [
313
- {
314
- "param_id": "3d55bc7d39b04a",
315
- "description": "",
316
- "field_type": "string",
317
- "is_checked": 1,
318
- "key": "id",
319
- "not_null": 1,
320
- "value": "1",
321
- "schema": {
322
- "type": "string"
323
- }
324
- },
325
- {
326
- "param_id": "bca53b876e042",
327
- "description": "",
328
- "field_type": "string",
329
- "is_checked": 1,
330
- "key": "",
331
- "not_null": 1,
332
- "value": "",
333
- "schema": {
334
- "type": "string"
335
- }
336
- }
337
- ]
338
- },
339
- "cookie": {
340
- "cookie_encode": 1,
341
214
  "parameter": []
342
215
  },
343
- "restful": {
216
+ "cookie": {
344
217
  "parameter": []
345
218
  }
346
219
  },
347
220
  "parents": [],
348
- "method": "GET",
349
- "protocol": "http/1.1",
350
- "url": "https://httpbin.org/get?id=1",
351
- "pre_url": ""
221
+ "server_id": "0",
222
+ "pre_url": "https://demo-api.apipost.cn/api"
352
223
  }
353
224
  ],
354
- "database_configs": {
355
- "2b9e0de71864000": {
356
- "type": "mysql",
357
- "dbconfig": {
358
- "host": "10.10.10.20",
359
- "port": 3306,
360
- "user": "root",
361
- "password": "12333333333",
362
- "database": "apipost",
363
- "auth_source": ""
364
- },
365
- "ssh": {
366
- "enable": -1,
367
- "host": "",
368
- "port": 22,
369
- "auth_type": 1,
370
- "username": "",
371
- "password": "",
372
- "private_key": "",
373
- "passphrase": ""
374
- }
375
- }
376
- }
225
+ "database_configs": {}
377
226
  },
378
227
  "test_events": [
379
228
  {
380
229
  "type": "api",
381
230
  "data": {
382
- "target_id": "cf94971317030",
383
- "project_id": "2adc267c9064000",
384
- "parent_id": "0",
231
+ "target_id": "f5e2176783030",
232
+ "project_id": "292dc7283464000",
233
+ "parent_id": "f5e217678302f",
385
234
  "target_type": "api"
386
235
  }
387
236
  }