caccl-send-request 2.2.2 → 2.2.4

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 CHANGED
@@ -74,7 +74,7 @@ var thisIsDev = (process.env.NODE_ENV === 'development');
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 sendCrossDomainCredentials, numRetries, method, stringifiedParams, query, url, headers, data, response, responseHeaders_1, responseBody, jsonErr_1, err_1;
77
+ var sendCrossDomainCredentials, numRetries, method, params, stringifiedParams, query, url, headers, data, encodedData, response, responseHeaders_1, responseBody, jsonErr_1, err_1;
78
78
  var _a;
79
79
  return __generator(this, function (_b) {
80
80
  switch (_b.label) {
@@ -84,7 +84,19 @@ var sendRequest = function (opts) { return __awaiter(void 0, void 0, void 0, fun
84
84
  || ((_a = opts.headers) === null || _a === void 0 ? void 0 : _a.credentials) === 'include');
85
85
  numRetries = (opts.numRetries ? opts.numRetries : 0);
86
86
  method = (opts.method || 'GET');
87
- stringifiedParams = qs_1.default.stringify(opts.params || {}, {
87
+ if (opts.params) {
88
+ params = {};
89
+ Object.entries(opts.params).forEach(function (_a) {
90
+ var key = _a[0], val = _a[1];
91
+ if (typeof val === 'object') {
92
+ params[key] = JSON.stringify(val);
93
+ }
94
+ else {
95
+ params[key] = val;
96
+ }
97
+ });
98
+ }
99
+ stringifiedParams = qs_1.default.stringify(params || {}, {
88
100
  encodeValuesOnly: true,
89
101
  arrayFormat: 'brackets',
90
102
  });
@@ -100,13 +112,21 @@ var sendRequest = function (opts) { return __awaiter(void 0, void 0, void 0, fun
100
112
  data = null;
101
113
  if (!headers['Content-Type']) {
102
114
  // Form encoded
103
- headers['Content-Type'] = 'application/json';
115
+ headers['Content-Type'] = 'application/x-www-form-urlencoded';
104
116
  // Add data if applicable
105
117
  data = (method !== 'GET' ? stringifiedParams : null);
106
118
  }
107
119
  else {
108
120
  // JSON encode
109
- data = opts.params;
121
+ data = params;
122
+ }
123
+ if (data) {
124
+ if (headers['Content-Type'] === 'application/x-www-form-urlencoded') {
125
+ encodedData = new URLSearchParams(params);
126
+ }
127
+ else {
128
+ encodedData = JSON.stringify(data);
129
+ }
110
130
  }
111
131
  _b.label = 1;
112
132
  case 1:
@@ -115,14 +135,14 @@ var sendRequest = function (opts) { return __awaiter(void 0, void 0, void 0, fun
115
135
  method: method,
116
136
  mode: 'cors',
117
137
  headers: headers !== null && headers !== void 0 ? headers : {},
118
- body: ((method !== 'GET' && data)
119
- ? JSON.stringify(data)
138
+ body: ((method !== 'GET' && encodedData)
139
+ ? encodedData
120
140
  : undefined),
121
141
  credentials: (sendCrossDomainCredentials
122
142
  ? 'include'
123
143
  : 'same-origin'),
124
144
  redirect: 'follow',
125
- referrerPolicy: (sendCrossDomainCredentials ? 'no-referrer' : 'origin'),
145
+ referrerPolicy: (sendCrossDomainCredentials ? 'origin' : undefined),
126
146
  })];
127
147
  case 2:
128
148
  response = _b.sent();
package/lib/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
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.2.2",
3
+ "version": "2.2.4",
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",
@@ -36,7 +36,7 @@
36
36
  "typescript": "^4.5.5"
37
37
  },
38
38
  "dependencies": {
39
- "caccl-error": "^2.2.2",
39
+ "caccl-error": "^2.2.4",
40
40
  "qs": "^6.9.6"
41
41
  }
42
42
  }
package/src/index.ts CHANGED
@@ -53,8 +53,23 @@ const sendRequest = async (
53
53
  // Process method
54
54
  const method: ('GET' | 'POST' | 'PUT' | 'DELETE') = (opts.method || 'GET');
55
55
 
56
+ // Encode objects within params
57
+ let params: {
58
+ [k in string]: any
59
+ } | undefined;
60
+ if (opts.params) {
61
+ params = {};
62
+ Object.entries(opts.params).forEach(([key, val]) => {
63
+ if (typeof val === 'object') {
64
+ (params as any)[key] = JSON.stringify(val);
65
+ } else {
66
+ (params as any)[key] = val;
67
+ }
68
+ });
69
+ }
70
+
56
71
  // Stringify parameters
57
- const stringifiedParams = qs.stringify(opts.params || {}, {
72
+ const stringifiedParams = qs.stringify(params || {}, {
58
73
  encodeValuesOnly: true,
59
74
  arrayFormat: 'brackets',
60
75
  });
@@ -74,12 +89,22 @@ const sendRequest = async (
74
89
  let data = null;
75
90
  if (!headers['Content-Type']) {
76
91
  // Form encoded
77
- headers['Content-Type'] = 'application/json';
92
+ headers['Content-Type'] = 'application/x-www-form-urlencoded';
78
93
  // Add data if applicable
79
94
  data = (method !== 'GET' ? stringifiedParams : null);
80
95
  } else {
81
96
  // JSON encode
82
- data = opts.params;
97
+ data = params;
98
+ }
99
+
100
+ // Encode data
101
+ let encodedData: URLSearchParams | string | undefined;
102
+ if (data) {
103
+ if (headers['Content-Type'] === 'application/x-www-form-urlencoded') {
104
+ encodedData = new URLSearchParams(params);
105
+ } else {
106
+ encodedData = JSON.stringify(data);
107
+ }
83
108
  }
84
109
 
85
110
  // Send request
@@ -91,8 +116,8 @@ const sendRequest = async (
91
116
  mode: 'cors',
92
117
  headers: headers ?? {},
93
118
  body: (
94
- (method !== 'GET' && data)
95
- ? JSON.stringify(data)
119
+ (method !== 'GET' && encodedData)
120
+ ? encodedData
96
121
  : undefined
97
122
  ),
98
123
  credentials: (
@@ -101,7 +126,7 @@ const sendRequest = async (
101
126
  : 'same-origin'
102
127
  ),
103
128
  redirect: 'follow',
104
- referrerPolicy: (sendCrossDomainCredentials ? 'no-referrer' : 'origin'),
129
+ referrerPolicy: (sendCrossDomainCredentials ? 'origin' : undefined),
105
130
  },
106
131
  );
107
132