@voxgig/sdkgen 0.36.0 → 0.38.1
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/bin/voxgig-sdkgen +1 -1
- package/dist/cmp/Main.js +0 -12
- package/dist/cmp/Main.js.map +1 -1
- package/package.json +2 -3
- package/project/.sdk/model/feature/log.jsonic +1 -1
- package/project/.sdk/model/target/js.jsonic +1 -1
- package/project/.sdk/model/target/py.jsonic +1 -1
- package/project/.sdk/model/target/ts.jsonic +2 -2
- package/project/.sdk/src/cmp/go/Config_go.ts +6 -2
- package/project/.sdk/src/cmp/js/EntityBase_js.ts +34 -0
- package/project/.sdk/src/cmp/js/Main_js.ts +10 -0
- package/project/.sdk/src/cmp/js/ReadmeExplanation_js.ts +33 -0
- package/project/.sdk/src/cmp/js/ReadmeHowto_js.ts +123 -0
- package/project/.sdk/src/cmp/js/ReadmeModel_js.ts +152 -0
- package/project/.sdk/src/cmp/js/ReadmeTopHowto_js.ts +25 -0
- package/project/.sdk/src/cmp/js/ReadmeTopQuick_js.ts +65 -0
- package/project/.sdk/src/cmp/js/ReadmeTopTest_js.ts +36 -0
- package/project/.sdk/src/cmp/js/TestDirect_js.ts +53 -5
- package/project/.sdk/src/cmp/js/TestEntity_js.ts +114 -20
- package/project/.sdk/src/cmp/js/fragment/Entity.fragment.js +7 -139
- package/project/.sdk/src/cmp/js/fragment/EntityBase.fragment.js +149 -0
- package/project/.sdk/src/cmp/js/fragment/EntityCreateOp.fragment.js +6 -10
- package/project/.sdk/src/cmp/js/fragment/EntityListOp.fragment.js +6 -10
- package/project/.sdk/src/cmp/js/fragment/EntityLoadOp.fragment.js +7 -11
- package/project/.sdk/src/cmp/js/fragment/EntityRemoveOp.fragment.js +7 -11
- package/project/.sdk/src/cmp/js/fragment/EntityUpdateOp.fragment.js +7 -11
- package/project/.sdk/src/cmp/js/fragment/Main.fragment.js +2 -0
- package/project/.sdk/src/cmp/js/fragment/SdkError.fragment.js +0 -2
- package/project/.sdk/src/cmp/lua/Config_lua.ts +6 -2
- package/project/.sdk/src/cmp/lua/TestEntity_lua.ts +3 -1
- package/project/.sdk/src/cmp/php/Config_php.ts +6 -2
- package/project/.sdk/src/cmp/php/Package_php.ts +2 -2
- package/project/.sdk/src/cmp/php/TestDirect_php.ts +2 -2
- package/project/.sdk/src/cmp/php/TestEntity_php.ts +10 -15
- package/project/.sdk/src/cmp/py/Config_py.ts +6 -2
- package/project/.sdk/src/cmp/py/Package_py.ts +1 -1
- package/project/.sdk/src/cmp/py/TestEntity_py.ts +3 -1
- package/project/.sdk/src/cmp/rb/Config_rb.ts +6 -2
- package/project/.sdk/src/cmp/ts/Main_ts.ts +7 -0
- package/project/.sdk/tm/go/feature/log_feature.go +1 -1
- package/project/.sdk/tm/go/test/runner_test.go +16 -2
- package/project/.sdk/tm/js/src/Context.js +142 -0
- package/project/.sdk/tm/js/src/Control.js +16 -0
- package/project/.sdk/tm/js/src/Operation.js +19 -0
- package/project/.sdk/tm/js/src/Point.js +24 -0
- package/project/.sdk/tm/js/src/README.md +1 -0
- package/project/.sdk/tm/js/src/Response.js +19 -0
- package/project/.sdk/tm/js/src/Result.js +21 -0
- package/project/.sdk/tm/js/src/Spec.js +26 -0
- package/project/.sdk/tm/js/src/feature/README.md +1 -0
- package/project/.sdk/tm/js/src/feature/base/BaseFeature.js +45 -0
- package/project/.sdk/tm/js/src/feature/log/LogFeature.js +46 -47
- package/project/.sdk/tm/js/src/feature/test/TestFeature.js +207 -0
- package/project/.sdk/tm/js/src/types.js +22 -0
- package/project/.sdk/tm/js/src/utility/CleanUtility.js +31 -0
- package/project/.sdk/tm/js/src/utility/DoneUtility.js +11 -4
- package/project/.sdk/tm/js/src/utility/FeatureAddUtility.js +42 -0
- package/project/.sdk/tm/js/src/utility/FeatureHookUtility.js +25 -0
- package/project/.sdk/tm/js/src/utility/FeatureInitUtility.js +11 -0
- package/project/.sdk/tm/js/src/utility/FetcherUtility.js +28 -0
- package/project/.sdk/tm/js/src/utility/MakeContextUtility.js +11 -0
- package/project/.sdk/tm/js/src/utility/MakeErrorUtility.js +55 -0
- package/project/.sdk/tm/js/src/utility/MakeFetchDefUtility.js +44 -0
- package/project/.sdk/tm/js/src/utility/MakeOptionsUtility.js +93 -0
- package/project/.sdk/tm/js/src/utility/MakePointUtility.js +77 -0
- package/project/.sdk/tm/js/src/utility/MakeRequestUtility.js +63 -0
- package/project/.sdk/tm/js/src/utility/MakeResponseUtility.js +55 -0
- package/project/.sdk/tm/js/src/utility/MakeResultUtility.js +54 -0
- package/project/.sdk/tm/js/src/utility/MakeSpecUtility.js +58 -0
- package/project/.sdk/tm/js/src/utility/MakeUrlUtility.js +40 -0
- package/project/.sdk/tm/js/src/utility/ParamUtility.js +61 -0
- package/project/.sdk/tm/js/src/utility/PrepareAuthUtility.js +41 -0
- package/project/.sdk/tm/js/src/utility/PrepareBodyUtility.js +25 -0
- package/project/.sdk/tm/js/src/utility/PrepareHeadersUtility.js +18 -0
- package/project/.sdk/tm/js/src/utility/{MethodUtility.js → PrepareMethodUtility.js} +7 -7
- package/project/.sdk/tm/js/src/utility/PrepareParamsUtility.js +25 -0
- package/project/.sdk/tm/js/src/utility/PreparePathUtility.js +13 -0
- package/project/.sdk/tm/js/src/utility/PrepareQueryUtility.js +26 -0
- package/project/.sdk/tm/js/src/utility/README.md +1 -0
- package/project/.sdk/tm/js/src/utility/ResultBasicUtility.js +34 -0
- package/project/.sdk/tm/js/src/utility/ResultBodyUtility.js +18 -0
- package/project/.sdk/tm/js/src/utility/ResultHeadersUtility.js +22 -0
- package/project/.sdk/tm/js/src/utility/StructUtility.js +2219 -1078
- package/project/.sdk/tm/js/src/utility/TransformRequestUtility.js +28 -0
- package/project/.sdk/tm/js/src/utility/TransformResponseUtility.js +31 -0
- package/project/.sdk/tm/js/src/utility/Utility.js +61 -61
- package/project/.sdk/tm/js/test/README.md +1 -0
- package/project/.sdk/tm/js/test/exists.test.js +16 -0
- package/project/.sdk/tm/js/test/runner.js +323 -107
- package/project/.sdk/tm/js/test/utility/Custom.test.js +41 -63
- package/project/.sdk/tm/js/test/utility/PrimaryUtility.test.js +390 -116
- package/project/.sdk/tm/js/test/utility/StructUtility.test.js +728 -175
- package/project/.sdk/tm/js/test/utility/index.js +9 -0
- package/project/.sdk/tm/js/test/utility.js +72 -0
- package/project/.sdk/tm/lua/test/primary_utility_test.lua +1213 -0
- package/project/.sdk/tm/lua/test/runner.lua +2 -2
- package/project/.sdk/tm/lua/test/struct_runner.lua +602 -0
- package/project/.sdk/tm/lua/test/struct_utility_test.lua +959 -0
- package/project/.sdk/tm/lua/utility/struct/struct.lua +10 -0
- package/project/.sdk/tm/php/feature/TestFeature.php +59 -96
- package/project/.sdk/tm/php/test/PrimaryUtilityTest.php +1309 -0
- package/project/.sdk/tm/php/test/Runner.php +24 -1
- package/project/.sdk/tm/php/test/StructRunner.php +275 -0
- package/project/.sdk/tm/php/test/StructUtilityTest.php +1336 -0
- package/project/.sdk/tm/php/utility/Fetcher.php +6 -2
- package/project/.sdk/tm/php/utility/MakeOptions.php +5 -1
- package/project/.sdk/tm/php/utility/MakeResult.php +3 -0
- package/project/.sdk/tm/php/utility/Param.php +9 -7
- package/project/.sdk/tm/php/utility/struct/Struct.php +312 -208
- package/project/.sdk/tm/py/test/runner.py +13 -0
- package/project/.sdk/tm/py/test/struct_runner.py +411 -0
- package/project/.sdk/tm/py/test/test_primary_utility.py +1101 -0
- package/project/.sdk/tm/py/test/test_struct_utility.py +751 -0
- package/project/.sdk/tm/rb/test/primary_utility_test.rb +1083 -0
- package/project/.sdk/tm/rb/test/runner.rb +5 -0
- package/project/.sdk/tm/rb/test/struct_runner.rb +309 -0
- package/project/.sdk/tm/rb/test/struct_utility_test.rb +670 -0
- package/src/cmp/Main.ts +1 -16
- package/project/.sdk/src/cmp/js/Quick_js.ts +0 -78
- package/project/.sdk/src/cmp/js/TestAcceptEntity_js.ts +0 -13
- package/project/.sdk/src/cmp/js/TestAccept_js.ts +0 -18
- package/project/.sdk/tm/js/src/utility/AuthUtility.js +0 -21
- package/project/.sdk/tm/js/src/utility/BodyUtility.js +0 -29
- package/project/.sdk/tm/js/src/utility/ErrorUtility.js +0 -33
- package/project/.sdk/tm/js/src/utility/FindparamUtility.js +0 -31
- package/project/.sdk/tm/js/src/utility/FullurlUtility.js +0 -39
- package/project/.sdk/tm/js/src/utility/HeadersUtility.js +0 -13
- package/project/.sdk/tm/js/src/utility/JoinurlUtility.js +0 -14
- package/project/.sdk/tm/js/src/utility/OperatorUtility.js +0 -44
- package/project/.sdk/tm/js/src/utility/OptionsUtility.js +0 -54
- package/project/.sdk/tm/js/src/utility/ParamsUtility.js +0 -21
- package/project/.sdk/tm/js/src/utility/QueryUtility.js +0 -21
- package/project/.sdk/tm/js/src/utility/ReqformUtility.js +0 -32
- package/project/.sdk/tm/js/src/utility/RequestUtility.js +0 -48
- package/project/.sdk/tm/js/src/utility/ResbasicUtility.js +0 -27
- package/project/.sdk/tm/js/src/utility/ResbodyUtility.js +0 -15
- package/project/.sdk/tm/js/src/utility/ResformUtility.js +0 -34
- package/project/.sdk/tm/js/src/utility/ResheadersUtility.js +0 -19
- package/project/.sdk/tm/js/src/utility/ResponseUtility.js +0 -37
- package/project/.sdk/tm/js/src/utility/ResultUtility.js +0 -28
- package/project/.sdk/tm/js/src/utility/SpecUtility.js +0 -35
|
@@ -0,0 +1,40 @@
|
|
|
1
|
+
|
|
2
|
+
function makeUrl(ctx) {
|
|
3
|
+
const utility = ctx.utility
|
|
4
|
+
const spec = ctx.spec
|
|
5
|
+
const result = ctx.result
|
|
6
|
+
|
|
7
|
+
const struct = utility.struct
|
|
8
|
+
const escurl = struct.escurl
|
|
9
|
+
const escre = struct.escre
|
|
10
|
+
const join = struct.join
|
|
11
|
+
const items = struct.items
|
|
12
|
+
|
|
13
|
+
if (null == spec) {
|
|
14
|
+
return ctx.error('url_no_spec', 'Expected context spec property to be defined.')
|
|
15
|
+
}
|
|
16
|
+
|
|
17
|
+
if (null == result) {
|
|
18
|
+
return ctx.error('url_no_result', 'Expected context result property to be defined.')
|
|
19
|
+
}
|
|
20
|
+
|
|
21
|
+
let url = join([spec.base, spec.prefix, spec.path, spec.suffix], '/', true)
|
|
22
|
+
let resmatch = {}
|
|
23
|
+
|
|
24
|
+
const params = spec.params
|
|
25
|
+
|
|
26
|
+
for (let [key, val] of items(params)) {
|
|
27
|
+
if (null != val) {
|
|
28
|
+
url = url.replace(RegExp('{' + escre(key) + '}'), escurl(val))
|
|
29
|
+
resmatch[key] = val
|
|
30
|
+
}
|
|
31
|
+
}
|
|
32
|
+
|
|
33
|
+
result.resmatch = resmatch
|
|
34
|
+
|
|
35
|
+
return url
|
|
36
|
+
}
|
|
37
|
+
|
|
38
|
+
module.exports = {
|
|
39
|
+
makeUrl
|
|
40
|
+
}
|
|
@@ -0,0 +1,61 @@
|
|
|
1
|
+
|
|
2
|
+
function param(ctx, paramdef) {
|
|
3
|
+
const point = ctx.point
|
|
4
|
+
const spec = ctx.spec
|
|
5
|
+
const match = ctx.match
|
|
6
|
+
const reqmatch = ctx.reqmatch
|
|
7
|
+
const data = ctx.data
|
|
8
|
+
const reqdata = ctx.reqdata
|
|
9
|
+
|
|
10
|
+
const utility = ctx.utility
|
|
11
|
+
const struct = utility.struct
|
|
12
|
+
|
|
13
|
+
const getprop = struct.getprop
|
|
14
|
+
const setprop = struct.setprop
|
|
15
|
+
|
|
16
|
+
const typify = struct.typify
|
|
17
|
+
const T_string = struct.T_string
|
|
18
|
+
|
|
19
|
+
const pt = typify(paramdef)
|
|
20
|
+
|
|
21
|
+
const key = 0 < (T_string & pt) ? paramdef : getprop(paramdef, 'name')
|
|
22
|
+
|
|
23
|
+
let akey = getprop(point.alias, key)
|
|
24
|
+
|
|
25
|
+
let val = getprop(reqmatch, key)
|
|
26
|
+
|
|
27
|
+
if (null == val) {
|
|
28
|
+
val = getprop(match, key)
|
|
29
|
+
}
|
|
30
|
+
|
|
31
|
+
if (null == val && null != akey) {
|
|
32
|
+
|
|
33
|
+
if (null != spec) {
|
|
34
|
+
setprop(spec.alias, akey, key)
|
|
35
|
+
}
|
|
36
|
+
|
|
37
|
+
val = getprop(reqmatch, akey)
|
|
38
|
+
}
|
|
39
|
+
|
|
40
|
+
if (null == val) {
|
|
41
|
+
val = getprop(reqdata, key)
|
|
42
|
+
}
|
|
43
|
+
|
|
44
|
+
if (null == val) {
|
|
45
|
+
val = getprop(data, key)
|
|
46
|
+
}
|
|
47
|
+
|
|
48
|
+
if (null == val && null != akey) {
|
|
49
|
+
val = getprop(reqdata, akey)
|
|
50
|
+
|
|
51
|
+
if (null == val) {
|
|
52
|
+
val = getprop(data, akey)
|
|
53
|
+
}
|
|
54
|
+
}
|
|
55
|
+
|
|
56
|
+
return val
|
|
57
|
+
}
|
|
58
|
+
|
|
59
|
+
module.exports = {
|
|
60
|
+
param
|
|
61
|
+
}
|
|
@@ -0,0 +1,41 @@
|
|
|
1
|
+
|
|
2
|
+
const HEADER_auth = 'authorization'
|
|
3
|
+
|
|
4
|
+
const OPTION_apikey = 'apikey'
|
|
5
|
+
|
|
6
|
+
const NOTFOUND = '__NOTFOUND__'
|
|
7
|
+
|
|
8
|
+
function prepareAuth(ctx) {
|
|
9
|
+
const utility = ctx.utility
|
|
10
|
+
|
|
11
|
+
const struct = utility.struct
|
|
12
|
+
const getprop = struct.getprop
|
|
13
|
+
const setprop = struct.setprop
|
|
14
|
+
const delprop = struct.delprop
|
|
15
|
+
|
|
16
|
+
const client = ctx.client
|
|
17
|
+
const spec = ctx.spec
|
|
18
|
+
|
|
19
|
+
if (null == spec) {
|
|
20
|
+
return ctx.error('auth_no_spec', 'Expected context spec property to be defined.')
|
|
21
|
+
}
|
|
22
|
+
|
|
23
|
+
const headers = spec.headers
|
|
24
|
+
|
|
25
|
+
const options = client.options()
|
|
26
|
+
|
|
27
|
+
const apikey = getprop(options, OPTION_apikey, NOTFOUND)
|
|
28
|
+
|
|
29
|
+
if (NOTFOUND === apikey) {
|
|
30
|
+
delprop(headers, HEADER_auth)
|
|
31
|
+
}
|
|
32
|
+
else {
|
|
33
|
+
setprop(headers, HEADER_auth, options.auth.prefix + ' ' + apikey)
|
|
34
|
+
}
|
|
35
|
+
|
|
36
|
+
return spec
|
|
37
|
+
}
|
|
38
|
+
|
|
39
|
+
module.exports = {
|
|
40
|
+
prepareAuth
|
|
41
|
+
}
|
|
@@ -0,0 +1,25 @@
|
|
|
1
|
+
|
|
2
|
+
function prepareBody(ctx) {
|
|
3
|
+
const op = ctx.op
|
|
4
|
+
|
|
5
|
+
const utility = ctx.utility
|
|
6
|
+
const error = utility.makeError
|
|
7
|
+
const transformRequest = utility.transformRequest
|
|
8
|
+
|
|
9
|
+
let body = undefined
|
|
10
|
+
|
|
11
|
+
if ('data' === op.input) {
|
|
12
|
+
try {
|
|
13
|
+
body = transformRequest(ctx)
|
|
14
|
+
}
|
|
15
|
+
catch (err) {
|
|
16
|
+
return error(ctx, err)
|
|
17
|
+
}
|
|
18
|
+
}
|
|
19
|
+
|
|
20
|
+
return body
|
|
21
|
+
}
|
|
22
|
+
|
|
23
|
+
module.exports = {
|
|
24
|
+
prepareBody
|
|
25
|
+
}
|
|
@@ -0,0 +1,18 @@
|
|
|
1
|
+
|
|
2
|
+
function prepareHeaders(ctx) {
|
|
3
|
+
const struct = ctx.utility.struct
|
|
4
|
+
const clone = struct.clone
|
|
5
|
+
const getprop = struct.getprop
|
|
6
|
+
|
|
7
|
+
const client = ctx.client
|
|
8
|
+
|
|
9
|
+
const options = client.options()
|
|
10
|
+
|
|
11
|
+
let out = clone(getprop(options, 'headers', {}))
|
|
12
|
+
|
|
13
|
+
return out
|
|
14
|
+
}
|
|
15
|
+
|
|
16
|
+
module.exports = {
|
|
17
|
+
prepareHeaders
|
|
18
|
+
}
|
|
@@ -1,22 +1,22 @@
|
|
|
1
1
|
|
|
2
|
-
function
|
|
3
|
-
const
|
|
2
|
+
function prepareMethod(ctx) {
|
|
3
|
+
const op = ctx.op
|
|
4
4
|
const opname = op.name
|
|
5
|
-
|
|
5
|
+
|
|
6
6
|
let key = opname
|
|
7
7
|
|
|
8
|
-
|
|
9
|
-
const mmap = {
|
|
8
|
+
const methodMap = {
|
|
10
9
|
create: 'POST',
|
|
11
10
|
update: 'PUT',
|
|
12
11
|
load: 'GET',
|
|
13
12
|
list: 'GET',
|
|
14
13
|
remove: 'DELETE',
|
|
14
|
+
patch: 'PATCH',
|
|
15
15
|
}
|
|
16
16
|
|
|
17
|
-
return
|
|
17
|
+
return methodMap[key]
|
|
18
18
|
}
|
|
19
19
|
|
|
20
20
|
module.exports = {
|
|
21
|
-
|
|
21
|
+
prepareMethod
|
|
22
22
|
}
|
|
@@ -0,0 +1,25 @@
|
|
|
1
|
+
|
|
2
|
+
function prepareParams(ctx) {
|
|
3
|
+
const utility = ctx.utility
|
|
4
|
+
const findparam = utility.param
|
|
5
|
+
|
|
6
|
+
const point = ctx.point
|
|
7
|
+
|
|
8
|
+
let params = point.args.params
|
|
9
|
+
|
|
10
|
+
params = params || []
|
|
11
|
+
|
|
12
|
+
let out = {}
|
|
13
|
+
for (let pd of params) {
|
|
14
|
+
let val = findparam(ctx, pd)
|
|
15
|
+
if (null != val) {
|
|
16
|
+
out[pd.name] = val
|
|
17
|
+
}
|
|
18
|
+
}
|
|
19
|
+
|
|
20
|
+
return out
|
|
21
|
+
}
|
|
22
|
+
|
|
23
|
+
module.exports = {
|
|
24
|
+
prepareParams
|
|
25
|
+
}
|
|
@@ -0,0 +1,26 @@
|
|
|
1
|
+
|
|
2
|
+
function prepareQuery(ctx) {
|
|
3
|
+
const utility = ctx.utility
|
|
4
|
+
const struct = utility.struct
|
|
5
|
+
const items = struct.items
|
|
6
|
+
|
|
7
|
+
const point = ctx.point
|
|
8
|
+
let params = point.params
|
|
9
|
+
let reqmatch = ctx.reqmatch
|
|
10
|
+
|
|
11
|
+
params = params || []
|
|
12
|
+
reqmatch = reqmatch || {}
|
|
13
|
+
|
|
14
|
+
const out = {}
|
|
15
|
+
for (let [key, val] of items(reqmatch)) {
|
|
16
|
+
if (null != val && !params.includes(key)) {
|
|
17
|
+
out[key] = val
|
|
18
|
+
}
|
|
19
|
+
}
|
|
20
|
+
|
|
21
|
+
return out
|
|
22
|
+
}
|
|
23
|
+
|
|
24
|
+
module.exports = {
|
|
25
|
+
prepareQuery
|
|
26
|
+
}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
# Utility
|
|
@@ -0,0 +1,34 @@
|
|
|
1
|
+
|
|
2
|
+
function resultBasic(ctx) {
|
|
3
|
+
const utility = ctx.utility
|
|
4
|
+
const struct = utility.struct
|
|
5
|
+
const getprop = struct.getprop
|
|
6
|
+
|
|
7
|
+
const response = ctx.response
|
|
8
|
+
const result = ctx.result
|
|
9
|
+
|
|
10
|
+
if (null != result && null != response) {
|
|
11
|
+
result.status = getprop(response, 'status', -1)
|
|
12
|
+
result.statusText = getprop(response, 'statusText', 'no-status')
|
|
13
|
+
|
|
14
|
+
if (400 <= result.status) {
|
|
15
|
+
const msg = 'request: ' + result.status + ': ' + result.statusText
|
|
16
|
+
if (result.err) {
|
|
17
|
+
const prevmsg = null == result.err.message ? '' : result.err.message
|
|
18
|
+
result.err.message = prevmsg + ': ' + msg
|
|
19
|
+
}
|
|
20
|
+
else {
|
|
21
|
+
result.err = ctx.error('request_status', msg)
|
|
22
|
+
}
|
|
23
|
+
}
|
|
24
|
+
else if (response.err) {
|
|
25
|
+
result.err = response.err
|
|
26
|
+
}
|
|
27
|
+
}
|
|
28
|
+
|
|
29
|
+
return result
|
|
30
|
+
}
|
|
31
|
+
|
|
32
|
+
module.exports = {
|
|
33
|
+
resultBasic
|
|
34
|
+
}
|
|
@@ -0,0 +1,18 @@
|
|
|
1
|
+
|
|
2
|
+
async function resultBody(ctx) {
|
|
3
|
+
const response = ctx.response
|
|
4
|
+
const result = ctx.result
|
|
5
|
+
|
|
6
|
+
if (result) {
|
|
7
|
+
if (response && response.json && null != response.body) {
|
|
8
|
+
const json = await response.json()
|
|
9
|
+
result.body = json
|
|
10
|
+
}
|
|
11
|
+
}
|
|
12
|
+
|
|
13
|
+
return result
|
|
14
|
+
}
|
|
15
|
+
|
|
16
|
+
module.exports = {
|
|
17
|
+
resultBody
|
|
18
|
+
}
|
|
@@ -0,0 +1,22 @@
|
|
|
1
|
+
|
|
2
|
+
function resultHeaders(ctx) {
|
|
3
|
+
const response = ctx.response
|
|
4
|
+
const result = ctx.result
|
|
5
|
+
|
|
6
|
+
if (result) {
|
|
7
|
+
if (response && response.headers && response.headers.forEach) {
|
|
8
|
+
const headers = {}
|
|
9
|
+
response.headers.forEach((v, k) => headers[k] = v)
|
|
10
|
+
result.headers = headers
|
|
11
|
+
}
|
|
12
|
+
else {
|
|
13
|
+
result.headers = {}
|
|
14
|
+
}
|
|
15
|
+
}
|
|
16
|
+
|
|
17
|
+
return result
|
|
18
|
+
}
|
|
19
|
+
|
|
20
|
+
module.exports = {
|
|
21
|
+
resultHeaders
|
|
22
|
+
}
|