caccl-send-request 2.4.2 → 2.5.0-beta-new-requests
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/lib/index.js +9 -30
- package/lib/index.js.map +1 -1
- package/package.json +3 -3
- package/src/index.ts +11 -35
package/lib/index.js
CHANGED
|
@@ -74,7 +74,7 @@ var ErrorCode_1 = __importDefault(require("./types/ErrorCode"));
|
|
|
74
74
|
* @returns { body, status, headers } on success
|
|
75
75
|
*/
|
|
76
76
|
var sendRequest = function (opts) { return __awaiter(void 0, void 0, void 0, function () {
|
|
77
|
-
var thisIsDev, sendCrossDomainCredentials, numRetries, method, params, stringifiedParams, query, url, headers,
|
|
77
|
+
var thisIsDev, sendCrossDomainCredentials, numRetries, method, params, stringifiedParams, query, url, headers, encodedBody, response, responseHeaders_1, status_1, responseBody, err_1, err_2;
|
|
78
78
|
var _a;
|
|
79
79
|
return __generator(this, function (_b) {
|
|
80
80
|
switch (_b.label) {
|
|
@@ -85,19 +85,8 @@ var sendRequest = function (opts) { return __awaiter(void 0, void 0, void 0, fun
|
|
|
85
85
|
|| ((_a = opts.headers) === null || _a === void 0 ? void 0 : _a.credentials) === 'include');
|
|
86
86
|
numRetries = (opts.numRetries ? opts.numRetries : 0);
|
|
87
87
|
method = (opts.method || 'GET');
|
|
88
|
-
|
|
89
|
-
|
|
90
|
-
Object.entries(opts.params).forEach(function (_a) {
|
|
91
|
-
var key = _a[0], val = _a[1];
|
|
92
|
-
if (typeof val === 'object' && !Array.isArray(val)) {
|
|
93
|
-
params[key] = JSON.stringify(val);
|
|
94
|
-
}
|
|
95
|
-
else {
|
|
96
|
-
params[key] = val;
|
|
97
|
-
}
|
|
98
|
-
});
|
|
99
|
-
}
|
|
100
|
-
stringifiedParams = qs_1.default.stringify(params || {}, {
|
|
88
|
+
params = opts.params || {};
|
|
89
|
+
stringifiedParams = qs_1.default.stringify(params, {
|
|
101
90
|
encodeValuesOnly: true,
|
|
102
91
|
arrayFormat: 'brackets',
|
|
103
92
|
});
|
|
@@ -109,24 +98,16 @@ var sendRequest = function (opts) { return __awaiter(void 0, void 0, void 0, fun
|
|
|
109
98
|
else {
|
|
110
99
|
url = "https://".concat(opts.host).concat(opts.path).concat(query);
|
|
111
100
|
}
|
|
112
|
-
headers = opts.headers || {};
|
|
113
|
-
data = null;
|
|
101
|
+
headers = __assign({}, (opts.headers || {}));
|
|
114
102
|
if (!headers['Content-Type']) {
|
|
115
|
-
// Form encoded
|
|
116
103
|
headers['Content-Type'] = 'application/x-www-form-urlencoded';
|
|
117
|
-
// Add data if applicable
|
|
118
|
-
data = (method !== 'GET' ? stringifiedParams : null);
|
|
119
|
-
}
|
|
120
|
-
else {
|
|
121
|
-
// JSON encode
|
|
122
|
-
data = params;
|
|
123
104
|
}
|
|
124
|
-
if (
|
|
105
|
+
if (method !== 'GET') {
|
|
125
106
|
if (headers['Content-Type'] === 'application/x-www-form-urlencoded') {
|
|
126
|
-
|
|
107
|
+
encodedBody = stringifiedParams;
|
|
127
108
|
}
|
|
128
109
|
else {
|
|
129
|
-
|
|
110
|
+
encodedBody = JSON.stringify(params);
|
|
130
111
|
}
|
|
131
112
|
}
|
|
132
113
|
_b.label = 1;
|
|
@@ -135,10 +116,8 @@ var sendRequest = function (opts) { return __awaiter(void 0, void 0, void 0, fun
|
|
|
135
116
|
return [4 /*yield*/, fetch(url, {
|
|
136
117
|
method: method,
|
|
137
118
|
mode: 'cors',
|
|
138
|
-
headers: headers
|
|
139
|
-
body:
|
|
140
|
-
? encodedData
|
|
141
|
-
: undefined),
|
|
119
|
+
headers: headers,
|
|
120
|
+
body: encodedBody,
|
|
142
121
|
credentials: (sendCrossDomainCredentials
|
|
143
122
|
? 'include'
|
|
144
123
|
: 'same-origin'),
|
package/lib/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,cAAc;AACd,0CAAoB;AAEpB,0BAA0B;AAC1B,4DAAqC;AAErC,sBAAsB;AACtB,gEAA0C;AAE1C;;;;;;;;;;;;;;;;GAgBG;AACH,IAAM,WAAW,GAAG,UAClB,IASC;;;;;;gBAOK,SAAS,GAAG,CAAC,IAAI,CAAC,IAAI,KAAK,gBAAgB,CAAC,CAAC;gBAG7C,0BAA0B,GAAG,CAAC,CAAC,CACnC,IAAI,CAAC,0BAA0B;uBAC5B,SAAS;uBACT,CAAA,MAAA,IAAI,CAAC,OAAO,0CAAE,WAAW,MAAK,SAAS,CAC3C,CAAC;gBAGI,UAAU,GAAG,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;gBAGrD,MAAM,GAAwC,CAAC,IAAI,CAAC,MAAM,IAAI,KAAK,CAAC,CAAC;
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "caccl-send-request",
|
|
3
|
-
"version": "2.
|
|
3
|
+
"version": "2.5.0-beta-new-requests",
|
|
4
4
|
"description": "The default request sender used throughout the CACCL project.",
|
|
5
5
|
"main": "./lib/index.js",
|
|
6
6
|
"types": "./lib/index.d.ts",
|
|
@@ -33,10 +33,10 @@
|
|
|
33
33
|
"eslint-plugin-import": "^2.22.1",
|
|
34
34
|
"eslint-plugin-jsx-a11y": "^6.4.1",
|
|
35
35
|
"eslint-plugin-react": "^7.22.0",
|
|
36
|
-
"typescript": "^5.
|
|
36
|
+
"typescript": "^4.5.5"
|
|
37
37
|
},
|
|
38
38
|
"dependencies": {
|
|
39
|
-
"caccl-error": "^2.
|
|
39
|
+
"caccl-error": "^2.5.0-beta-new-requests",
|
|
40
40
|
"qs": "^6.9.6"
|
|
41
41
|
}
|
|
42
42
|
}
|
package/src/index.ts
CHANGED
|
@@ -56,23 +56,10 @@ const sendRequest = async (
|
|
|
56
56
|
// Process method
|
|
57
57
|
const method: ('GET' | 'POST' | 'PUT' | 'DELETE') = (opts.method || 'GET');
|
|
58
58
|
|
|
59
|
-
|
|
60
|
-
let params: {
|
|
61
|
-
[k in string]: any
|
|
62
|
-
} | undefined;
|
|
63
|
-
if (opts.params) {
|
|
64
|
-
params = {};
|
|
65
|
-
Object.entries(opts.params).forEach(([key, val]) => {
|
|
66
|
-
if (typeof val === 'object' && !Array.isArray(val)) {
|
|
67
|
-
(params as any)[key] = JSON.stringify(val);
|
|
68
|
-
} else {
|
|
69
|
-
(params as any)[key] = val;
|
|
70
|
-
}
|
|
71
|
-
});
|
|
72
|
-
}
|
|
59
|
+
const params = opts.params || {};
|
|
73
60
|
|
|
74
|
-
// Stringify parameters
|
|
75
|
-
const stringifiedParams = qs.stringify(params
|
|
61
|
+
// Stringify parameters (qs handles nested objects and arrays natively)
|
|
62
|
+
const stringifiedParams = qs.stringify(params, {
|
|
76
63
|
encodeValuesOnly: true,
|
|
77
64
|
arrayFormat: 'brackets',
|
|
78
65
|
});
|
|
@@ -88,25 +75,18 @@ const sendRequest = async (
|
|
|
88
75
|
}
|
|
89
76
|
|
|
90
77
|
// Update headers
|
|
91
|
-
const headers = opts.headers || {};
|
|
92
|
-
let data = null;
|
|
78
|
+
const headers = { ...(opts.headers || {}) };
|
|
93
79
|
if (!headers['Content-Type']) {
|
|
94
|
-
// Form encoded
|
|
95
80
|
headers['Content-Type'] = 'application/x-www-form-urlencoded';
|
|
96
|
-
// Add data if applicable
|
|
97
|
-
data = (method !== 'GET' ? stringifiedParams : null);
|
|
98
|
-
} else {
|
|
99
|
-
// JSON encode
|
|
100
|
-
data = params;
|
|
101
81
|
}
|
|
102
82
|
|
|
103
|
-
// Encode
|
|
104
|
-
let
|
|
105
|
-
if (
|
|
83
|
+
// Encode body for non-GET requests
|
|
84
|
+
let encodedBody: string | undefined;
|
|
85
|
+
if (method !== 'GET') {
|
|
106
86
|
if (headers['Content-Type'] === 'application/x-www-form-urlencoded') {
|
|
107
|
-
|
|
87
|
+
encodedBody = stringifiedParams;
|
|
108
88
|
} else {
|
|
109
|
-
|
|
89
|
+
encodedBody = JSON.stringify(params);
|
|
110
90
|
}
|
|
111
91
|
}
|
|
112
92
|
|
|
@@ -117,12 +97,8 @@ const sendRequest = async (
|
|
|
117
97
|
{
|
|
118
98
|
method,
|
|
119
99
|
mode: 'cors',
|
|
120
|
-
headers
|
|
121
|
-
body:
|
|
122
|
-
(method !== 'GET' && encodedData)
|
|
123
|
-
? encodedData
|
|
124
|
-
: undefined
|
|
125
|
-
),
|
|
100
|
+
headers,
|
|
101
|
+
body: encodedBody,
|
|
126
102
|
credentials: (
|
|
127
103
|
sendCrossDomainCredentials
|
|
128
104
|
? 'include'
|