@faasjs/request 0.0.2-beta.399 → 0.0.2-beta.400
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/README.md +1 -0
- package/dist/index.d.ts +3 -1
- package/dist/index.js +10 -8
- package/dist/index.mjs +10 -8
- package/package.json +4 -3
package/README.md
CHANGED
|
@@ -57,6 +57,7 @@ ___
|
|
|
57
57
|
| `downloadStream?` | `NodeJS.WritableStream` | Create a write stream to download a file. |
|
|
58
58
|
| `file?` | `string` | Path of uploading a file to the server. |
|
|
59
59
|
| `headers?` | `http.OutgoingHttpHeaders` | - |
|
|
60
|
+
| `logger?` | `Logger` | - |
|
|
60
61
|
| `method?` | `string` | The HTTP method to use when making the request. Defaults to GET. |
|
|
61
62
|
| `parse?` | (`body`: `string`) => `any` | Body parser. Defaults to `JSON.parse`. |
|
|
62
63
|
| `passphrase?` | `string` | - |
|
package/dist/index.d.ts
CHANGED
|
@@ -1,4 +1,5 @@
|
|
|
1
1
|
import * as http from 'http';
|
|
2
|
+
import { Logger } from '@faasjs/logger';
|
|
2
3
|
|
|
3
4
|
declare type Request = {
|
|
4
5
|
headers?: http.OutgoingHttpHeaders;
|
|
@@ -51,6 +52,7 @@ declare type RequestOptions = {
|
|
|
51
52
|
* Body parser. Defaults to `JSON.parse`.
|
|
52
53
|
*/
|
|
53
54
|
parse?: (body: string) => any;
|
|
55
|
+
logger?: Logger;
|
|
54
56
|
};
|
|
55
57
|
declare type Mock = (url: string, options: RequestOptions) => Promise<Response>;
|
|
56
58
|
/**
|
|
@@ -80,6 +82,6 @@ declare function querystringify(obj: any): string;
|
|
|
80
82
|
* @returns {promise}
|
|
81
83
|
* @url https://faasjs.com/doc/request.html
|
|
82
84
|
*/
|
|
83
|
-
declare function request<T = any>(url: string, { headers, method, query, body, timeout, auth, file, downloadStream, pfx, passphrase, agent, parse }?: RequestOptions): Promise<Response<T>>;
|
|
85
|
+
declare function request<T = any>(url: string, { headers, method, query, body, timeout, auth, file, downloadStream, pfx, passphrase, agent, parse, logger, }?: RequestOptions): Promise<Response<T>>;
|
|
84
86
|
|
|
85
87
|
export { Request, RequestOptions, Response, querystringify, request, setMock };
|
package/dist/index.js
CHANGED
|
@@ -72,12 +72,14 @@ async function request(url, {
|
|
|
72
72
|
pfx,
|
|
73
73
|
passphrase,
|
|
74
74
|
agent,
|
|
75
|
-
parse
|
|
75
|
+
parse,
|
|
76
|
+
logger
|
|
76
77
|
} = {
|
|
77
78
|
headers: {},
|
|
78
79
|
query: {}
|
|
79
80
|
}) {
|
|
80
|
-
|
|
81
|
+
if (!logger)
|
|
82
|
+
logger = new import_logger.Logger("request");
|
|
81
83
|
if (mock)
|
|
82
84
|
return mock(url, {
|
|
83
85
|
headers,
|
|
@@ -120,7 +122,7 @@ async function request(url, {
|
|
|
120
122
|
if (body && !options.headers["Content-Length"])
|
|
121
123
|
options.headers["Content-Length"] = Buffer.byteLength(body);
|
|
122
124
|
return await new Promise(function(resolve, reject) {
|
|
123
|
-
|
|
125
|
+
logger.debug("request %j", {
|
|
124
126
|
...options,
|
|
125
127
|
body
|
|
126
128
|
});
|
|
@@ -137,7 +139,7 @@ async function request(url, {
|
|
|
137
139
|
});
|
|
138
140
|
res.on("end", () => {
|
|
139
141
|
const data = Buffer.concat(raw).toString();
|
|
140
|
-
|
|
142
|
+
logger.timeEnd(url, "response %s %s %s", res.statusCode, res.headers["content-type"], data);
|
|
141
143
|
const response = /* @__PURE__ */ Object.create(null);
|
|
142
144
|
response.request = options;
|
|
143
145
|
response.request.body = body;
|
|
@@ -148,14 +150,14 @@ async function request(url, {
|
|
|
148
150
|
if (response.body && response.headers["content-type"] && response.headers["content-type"].includes("application/json"))
|
|
149
151
|
try {
|
|
150
152
|
response.body = parse ? parse(response.body) : JSON.parse(response.body);
|
|
151
|
-
|
|
153
|
+
logger.debug("response.parse JSON");
|
|
152
154
|
} catch (error) {
|
|
153
155
|
console.error(error);
|
|
154
156
|
}
|
|
155
157
|
if (response.statusCode >= 200 && response.statusCode < 400)
|
|
156
158
|
resolve(response);
|
|
157
159
|
else {
|
|
158
|
-
|
|
160
|
+
logger.debug("response.error %j", response);
|
|
159
161
|
reject(response);
|
|
160
162
|
}
|
|
161
163
|
});
|
|
@@ -178,10 +180,10 @@ async function request(url, {
|
|
|
178
180
|
req.write(multipartBody);
|
|
179
181
|
}
|
|
180
182
|
req.on("error", function(e) {
|
|
181
|
-
|
|
183
|
+
logger.timeEnd(url, "response.error %j", e);
|
|
182
184
|
reject(e);
|
|
183
185
|
});
|
|
184
|
-
|
|
186
|
+
logger.time(url);
|
|
185
187
|
req.end();
|
|
186
188
|
});
|
|
187
189
|
}
|
package/dist/index.mjs
CHANGED
|
@@ -40,12 +40,14 @@ async function request(url, {
|
|
|
40
40
|
pfx,
|
|
41
41
|
passphrase,
|
|
42
42
|
agent,
|
|
43
|
-
parse
|
|
43
|
+
parse,
|
|
44
|
+
logger
|
|
44
45
|
} = {
|
|
45
46
|
headers: {},
|
|
46
47
|
query: {}
|
|
47
48
|
}) {
|
|
48
|
-
|
|
49
|
+
if (!logger)
|
|
50
|
+
logger = new Logger("request");
|
|
49
51
|
if (mock)
|
|
50
52
|
return mock(url, {
|
|
51
53
|
headers,
|
|
@@ -88,7 +90,7 @@ async function request(url, {
|
|
|
88
90
|
if (body && !options.headers["Content-Length"])
|
|
89
91
|
options.headers["Content-Length"] = Buffer.byteLength(body);
|
|
90
92
|
return await new Promise(function(resolve, reject) {
|
|
91
|
-
|
|
93
|
+
logger.debug("request %j", {
|
|
92
94
|
...options,
|
|
93
95
|
body
|
|
94
96
|
});
|
|
@@ -105,7 +107,7 @@ async function request(url, {
|
|
|
105
107
|
});
|
|
106
108
|
res.on("end", () => {
|
|
107
109
|
const data = Buffer.concat(raw).toString();
|
|
108
|
-
|
|
110
|
+
logger.timeEnd(url, "response %s %s %s", res.statusCode, res.headers["content-type"], data);
|
|
109
111
|
const response = /* @__PURE__ */ Object.create(null);
|
|
110
112
|
response.request = options;
|
|
111
113
|
response.request.body = body;
|
|
@@ -116,14 +118,14 @@ async function request(url, {
|
|
|
116
118
|
if (response.body && response.headers["content-type"] && response.headers["content-type"].includes("application/json"))
|
|
117
119
|
try {
|
|
118
120
|
response.body = parse ? parse(response.body) : JSON.parse(response.body);
|
|
119
|
-
|
|
121
|
+
logger.debug("response.parse JSON");
|
|
120
122
|
} catch (error) {
|
|
121
123
|
console.error(error);
|
|
122
124
|
}
|
|
123
125
|
if (response.statusCode >= 200 && response.statusCode < 400)
|
|
124
126
|
resolve(response);
|
|
125
127
|
else {
|
|
126
|
-
|
|
128
|
+
logger.debug("response.error %j", response);
|
|
127
129
|
reject(response);
|
|
128
130
|
}
|
|
129
131
|
});
|
|
@@ -146,10 +148,10 @@ async function request(url, {
|
|
|
146
148
|
req.write(multipartBody);
|
|
147
149
|
}
|
|
148
150
|
req.on("error", function(e) {
|
|
149
|
-
|
|
151
|
+
logger.timeEnd(url, "response.error %j", e);
|
|
150
152
|
reject(e);
|
|
151
153
|
});
|
|
152
|
-
|
|
154
|
+
logger.time(url);
|
|
153
155
|
req.end();
|
|
154
156
|
});
|
|
155
157
|
}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@faasjs/request",
|
|
3
|
-
"version": "0.0.2-beta.
|
|
3
|
+
"version": "0.0.2-beta.400",
|
|
4
4
|
"license": "MIT",
|
|
5
5
|
"main": "dist/index.js",
|
|
6
6
|
"types": "dist/index.d.ts",
|
|
@@ -22,13 +22,14 @@
|
|
|
22
22
|
"dist"
|
|
23
23
|
],
|
|
24
24
|
"peerDependencies": {
|
|
25
|
-
"@faasjs/logger": "^0.0.2-beta.
|
|
25
|
+
"@faasjs/logger": "^0.0.2-beta.400"
|
|
26
26
|
},
|
|
27
27
|
"devDependencies": {
|
|
28
28
|
"tsup": "*",
|
|
29
29
|
"typescript": "*"
|
|
30
30
|
},
|
|
31
31
|
"engines": {
|
|
32
|
-
"npm": ">=8.0.0"
|
|
32
|
+
"npm": ">=8.0.0",
|
|
33
|
+
"node": ">=16.0.0"
|
|
33
34
|
}
|
|
34
35
|
}
|