@aws-amplify/api-rest 3.3.3-api-v6.2 → 3.3.3-api-v6.23
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/RestClient.d.ts +8 -8
- package/lib/RestClient.js +40 -32
- package/lib/RestClient.js.map +1 -1
- package/lib-esm/RestClient.d.ts +8 -8
- package/lib-esm/RestClient.js +40 -32
- package/lib-esm/RestClient.js.map +1 -1
- package/package.json +4 -4
- package/src/RestClient.ts +37 -39
package/lib/RestClient.d.ts
CHANGED
|
@@ -53,49 +53,49 @@ export declare class RestClient {
|
|
|
53
53
|
* @param {json} [init] - Request extra params
|
|
54
54
|
* @return {Promise} - A promise that resolves to an object with response status and JSON data, if successful.
|
|
55
55
|
*/
|
|
56
|
-
ajax(urlOrApiInfo: string | ApiInfo, method: string, init: any):
|
|
56
|
+
ajax(urlOrApiInfo: string | ApiInfo, method: string, init: any): any;
|
|
57
57
|
/**
|
|
58
58
|
* GET HTTP request
|
|
59
59
|
* @param {string | ApiInfo } urlOrApiInfo - Full request URL or Api information
|
|
60
60
|
* @param {JSON} init - Request extra params
|
|
61
61
|
* @return {Promise} - A promise that resolves to an object with response status and JSON data, if successful.
|
|
62
62
|
*/
|
|
63
|
-
get(urlOrApiInfo: string | ApiInfo, init: any):
|
|
63
|
+
get(urlOrApiInfo: string | ApiInfo, init: any): any;
|
|
64
64
|
/**
|
|
65
65
|
* PUT HTTP request
|
|
66
66
|
* @param {string | ApiInfo } urlOrApiInfo - Full request URL or Api information
|
|
67
67
|
* @param {json} init - Request extra params
|
|
68
68
|
* @return {Promise} - A promise that resolves to an object with response status and JSON data, if successful.
|
|
69
69
|
*/
|
|
70
|
-
put(urlOrApiInfo: string | ApiInfo, init: any):
|
|
70
|
+
put(urlOrApiInfo: string | ApiInfo, init: any): any;
|
|
71
71
|
/**
|
|
72
72
|
* PATCH HTTP request
|
|
73
73
|
* @param {string | ApiInfo } urlOrApiInfo - Full request URL or Api information
|
|
74
74
|
* @param {json} init - Request extra params
|
|
75
75
|
* @return {Promise} - A promise that resolves to an object with response status and JSON data, if successful.
|
|
76
76
|
*/
|
|
77
|
-
patch(urlOrApiInfo: string | ApiInfo, init: any):
|
|
77
|
+
patch(urlOrApiInfo: string | ApiInfo, init: any): any;
|
|
78
78
|
/**
|
|
79
79
|
* POST HTTP request
|
|
80
80
|
* @param {string | ApiInfo } urlOrApiInfo - Full request URL or Api information
|
|
81
81
|
* @param {json} init - Request extra params
|
|
82
82
|
* @return {Promise} - A promise that resolves to an object with response status and JSON data, if successful.
|
|
83
83
|
*/
|
|
84
|
-
post(urlOrApiInfo: string | ApiInfo, init: any):
|
|
84
|
+
post(urlOrApiInfo: string | ApiInfo, init: any): any;
|
|
85
85
|
/**
|
|
86
86
|
* DELETE HTTP request
|
|
87
87
|
* @param {string | ApiInfo } urlOrApiInfo - Full request URL or Api information
|
|
88
88
|
* @param {json} init - Request extra params
|
|
89
89
|
* @return {Promise} - A promise that resolves to an object with response status and JSON data, if successful.
|
|
90
90
|
*/
|
|
91
|
-
del(urlOrApiInfo: string | ApiInfo, init: any):
|
|
91
|
+
del(urlOrApiInfo: string | ApiInfo, init: any): any;
|
|
92
92
|
/**
|
|
93
93
|
* HEAD HTTP request
|
|
94
94
|
* @param {string | ApiInfo } urlOrApiInfo - Full request URL or Api information
|
|
95
95
|
* @param {json} init - Request extra params
|
|
96
96
|
* @return {Promise} - A promise that resolves to an object with response status and JSON data, if successful.
|
|
97
97
|
*/
|
|
98
|
-
head(urlOrApiInfo: string | ApiInfo, init: any):
|
|
98
|
+
head(urlOrApiInfo: string | ApiInfo, init: any): any;
|
|
99
99
|
/**
|
|
100
100
|
* Cancel an inflight API request
|
|
101
101
|
* @param {Promise<any>} request - The request promise to cancel
|
|
@@ -132,7 +132,7 @@ export declare class RestClient {
|
|
|
132
132
|
*/
|
|
133
133
|
endpoint(apiName: string): string;
|
|
134
134
|
/** private methods **/
|
|
135
|
-
private
|
|
135
|
+
private _sign;
|
|
136
136
|
private _request;
|
|
137
137
|
private _parseUrl;
|
|
138
138
|
}
|
package/lib/RestClient.js
CHANGED
|
@@ -67,8 +67,7 @@ var RestClient = /** @class */ (function () {
|
|
|
67
67
|
*/
|
|
68
68
|
RestClient.prototype.ajax = function (urlOrApiInfo, method, init) {
|
|
69
69
|
return tslib_1.__awaiter(this, void 0, void 0, function () {
|
|
70
|
-
var parsed_url, url, region, service, custom_header, params, libraryHeaders, initParams, isAllResponse, custom_header_obj, _a, _b, search, parsedUrl;
|
|
71
|
-
var _this = this;
|
|
70
|
+
var parsed_url, url, region, service, custom_header, params, libraryHeaders, initParams, isAllResponse, custom_header_obj, _a, _b, search, parsedUrl, credentials, error_1, signedParams, response, error_2, headers, dateHeader, responseDate, requestDate;
|
|
72
71
|
return tslib_1.__generator(this, function (_c) {
|
|
73
72
|
switch (_c.label) {
|
|
74
73
|
case 0:
|
|
@@ -147,29 +146,43 @@ var RestClient = /** @class */ (function () {
|
|
|
147
146
|
}, {});
|
|
148
147
|
return [2 /*return*/, this._request(params, isAllResponse)];
|
|
149
148
|
}
|
|
150
|
-
|
|
151
|
-
|
|
152
|
-
|
|
153
|
-
|
|
154
|
-
|
|
155
|
-
|
|
156
|
-
|
|
157
|
-
|
|
158
|
-
|
|
159
|
-
|
|
160
|
-
|
|
161
|
-
|
|
162
|
-
|
|
163
|
-
|
|
164
|
-
|
|
165
|
-
|
|
166
|
-
|
|
167
|
-
|
|
168
|
-
|
|
169
|
-
|
|
170
|
-
|
|
171
|
-
|
|
172
|
-
|
|
149
|
+
_c.label = 4;
|
|
150
|
+
case 4:
|
|
151
|
+
_c.trys.push([4, 6, , 7]);
|
|
152
|
+
return [4 /*yield*/, this.Credentials.get()];
|
|
153
|
+
case 5:
|
|
154
|
+
credentials = _c.sent();
|
|
155
|
+
return [3 /*break*/, 7];
|
|
156
|
+
case 6:
|
|
157
|
+
error_1 = _c.sent();
|
|
158
|
+
logger.debug('No credentials available, the request will be unsigned');
|
|
159
|
+
return [2 /*return*/, this._request(params, isAllResponse)];
|
|
160
|
+
case 7:
|
|
161
|
+
_c.trys.push([7, 9, , 10]);
|
|
162
|
+
signedParams = this._sign(tslib_1.__assign({}, params), credentials, {
|
|
163
|
+
region: region,
|
|
164
|
+
service: service,
|
|
165
|
+
});
|
|
166
|
+
return [4 /*yield*/, axios_1.default(signedParams)];
|
|
167
|
+
case 8:
|
|
168
|
+
response = _c.sent();
|
|
169
|
+
return [2 /*return*/, isAllResponse ? response : response.data];
|
|
170
|
+
case 9:
|
|
171
|
+
error_2 = _c.sent();
|
|
172
|
+
logger.debug(error_2);
|
|
173
|
+
if (core_1.DateUtils.isClockSkewError(error_2)) {
|
|
174
|
+
headers = error_2.response.headers;
|
|
175
|
+
dateHeader = headers && (headers.date || headers.Date);
|
|
176
|
+
responseDate = new Date(dateHeader);
|
|
177
|
+
requestDate = core_1.DateUtils.getDateFromHeaderString(signedParams.headers['x-amz-date']);
|
|
178
|
+
// Compare local clock to the server clock
|
|
179
|
+
if (core_1.DateUtils.isClockSkewed(responseDate)) {
|
|
180
|
+
core_1.DateUtils.setClockOffset(responseDate.getTime() - requestDate.getTime());
|
|
181
|
+
return [2 /*return*/, this.ajax(urlOrApiInfo, method, init)];
|
|
182
|
+
}
|
|
183
|
+
}
|
|
184
|
+
throw error_2;
|
|
185
|
+
case 10: return [2 /*return*/];
|
|
173
186
|
}
|
|
174
187
|
});
|
|
175
188
|
});
|
|
@@ -310,7 +323,7 @@ var RestClient = /** @class */ (function () {
|
|
|
310
323
|
return response;
|
|
311
324
|
};
|
|
312
325
|
/** private methods **/
|
|
313
|
-
RestClient.prototype.
|
|
326
|
+
RestClient.prototype._sign = function (params, credentials, _a) {
|
|
314
327
|
var service = _a.service, region = _a.region;
|
|
315
328
|
var signerServiceInfoParams = params.signerServiceInfo, otherParams = tslib_1.__rest(params, ["signerServiceInfo"]);
|
|
316
329
|
var endpoint_region = region || this._region || this._options.region;
|
|
@@ -331,12 +344,7 @@ var RestClient = /** @class */ (function () {
|
|
|
331
344
|
}
|
|
332
345
|
logger.debug('Signed Request: ', signed_params);
|
|
333
346
|
delete signed_params.headers['host'];
|
|
334
|
-
return
|
|
335
|
-
.then(function (response) { return (isAllResponse ? response : response.data); })
|
|
336
|
-
.catch(function (error) {
|
|
337
|
-
logger.debug(error);
|
|
338
|
-
throw error;
|
|
339
|
-
});
|
|
347
|
+
return signed_params;
|
|
340
348
|
};
|
|
341
349
|
RestClient.prototype._request = function (params, isAllResponse) {
|
|
342
350
|
if (isAllResponse === void 0) { isAllResponse = false; }
|
package/lib/RestClient.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"RestClient.js","sourceRoot":"","sources":["../src/RestClient.ts"],"names":[],"mappings":";AAAA,qEAAqE;AACrE,sCAAsC;;;AAEtC,0CAK2B;AAG3B,wDAAiD;AACjD,2BAAoC;AAEpC,IAAM,MAAM,GAAG,IAAI,oBAAM,CAAC,YAAY,CAAC,CAAC;AAExC;;;;;;;;;;;;EAYE;AACF;IAwBC;;OAEG;IACH,oBAAY,OAAmB;QAzBvB,YAAO,GAAW,WAAW,CAAC,CAAC,4CAA4C;QAC3E,aAAQ,GAAW,aAAa,CAAC,CAAC,2CAA2C;QAC7E,mBAAc,GAAG,SAAS,CAAC,CAAC,2CAA2C;QAE/E;;;;;;;;;;;;;WAaG;QACK,oBAAe,GAAoC,IAAI,CAAC;QAEhE,gBAAW,GAAG,kBAAW,CAAC;QAMzB,IAAI,CAAC,QAAQ,GAAG,OAAO,CAAC;QACxB,MAAM,CAAC,KAAK,CAAC,aAAa,EAAE,IAAI,CAAC,QAAQ,CAAC,CAAC;QAC3C,IAAI,IAAI,CAAC,eAAe,IAAI,IAAI,EAAE;YACjC,IAAI,CAAC,eAAe,GAAG,IAAI,OAAO,EAAE,CAAC;SACrC;IACF,CAAC;IAED;;;;;;;EAOC;IACD;;;;;;OAMG;IACG,yBAAI,GAAV,UAAW,YAA8B,EAAE,MAAc,EAAE,IAAI
|
|
1
|
+
{"version":3,"file":"RestClient.js","sourceRoot":"","sources":["../src/RestClient.ts"],"names":[],"mappings":"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"}
|
package/lib-esm/RestClient.d.ts
CHANGED
|
@@ -53,49 +53,49 @@ export declare class RestClient {
|
|
|
53
53
|
* @param {json} [init] - Request extra params
|
|
54
54
|
* @return {Promise} - A promise that resolves to an object with response status and JSON data, if successful.
|
|
55
55
|
*/
|
|
56
|
-
ajax(urlOrApiInfo: string | ApiInfo, method: string, init: any):
|
|
56
|
+
ajax(urlOrApiInfo: string | ApiInfo, method: string, init: any): any;
|
|
57
57
|
/**
|
|
58
58
|
* GET HTTP request
|
|
59
59
|
* @param {string | ApiInfo } urlOrApiInfo - Full request URL or Api information
|
|
60
60
|
* @param {JSON} init - Request extra params
|
|
61
61
|
* @return {Promise} - A promise that resolves to an object with response status and JSON data, if successful.
|
|
62
62
|
*/
|
|
63
|
-
get(urlOrApiInfo: string | ApiInfo, init: any):
|
|
63
|
+
get(urlOrApiInfo: string | ApiInfo, init: any): any;
|
|
64
64
|
/**
|
|
65
65
|
* PUT HTTP request
|
|
66
66
|
* @param {string | ApiInfo } urlOrApiInfo - Full request URL or Api information
|
|
67
67
|
* @param {json} init - Request extra params
|
|
68
68
|
* @return {Promise} - A promise that resolves to an object with response status and JSON data, if successful.
|
|
69
69
|
*/
|
|
70
|
-
put(urlOrApiInfo: string | ApiInfo, init: any):
|
|
70
|
+
put(urlOrApiInfo: string | ApiInfo, init: any): any;
|
|
71
71
|
/**
|
|
72
72
|
* PATCH HTTP request
|
|
73
73
|
* @param {string | ApiInfo } urlOrApiInfo - Full request URL or Api information
|
|
74
74
|
* @param {json} init - Request extra params
|
|
75
75
|
* @return {Promise} - A promise that resolves to an object with response status and JSON data, if successful.
|
|
76
76
|
*/
|
|
77
|
-
patch(urlOrApiInfo: string | ApiInfo, init: any):
|
|
77
|
+
patch(urlOrApiInfo: string | ApiInfo, init: any): any;
|
|
78
78
|
/**
|
|
79
79
|
* POST HTTP request
|
|
80
80
|
* @param {string | ApiInfo } urlOrApiInfo - Full request URL or Api information
|
|
81
81
|
* @param {json} init - Request extra params
|
|
82
82
|
* @return {Promise} - A promise that resolves to an object with response status and JSON data, if successful.
|
|
83
83
|
*/
|
|
84
|
-
post(urlOrApiInfo: string | ApiInfo, init: any):
|
|
84
|
+
post(urlOrApiInfo: string | ApiInfo, init: any): any;
|
|
85
85
|
/**
|
|
86
86
|
* DELETE HTTP request
|
|
87
87
|
* @param {string | ApiInfo } urlOrApiInfo - Full request URL or Api information
|
|
88
88
|
* @param {json} init - Request extra params
|
|
89
89
|
* @return {Promise} - A promise that resolves to an object with response status and JSON data, if successful.
|
|
90
90
|
*/
|
|
91
|
-
del(urlOrApiInfo: string | ApiInfo, init: any):
|
|
91
|
+
del(urlOrApiInfo: string | ApiInfo, init: any): any;
|
|
92
92
|
/**
|
|
93
93
|
* HEAD HTTP request
|
|
94
94
|
* @param {string | ApiInfo } urlOrApiInfo - Full request URL or Api information
|
|
95
95
|
* @param {json} init - Request extra params
|
|
96
96
|
* @return {Promise} - A promise that resolves to an object with response status and JSON data, if successful.
|
|
97
97
|
*/
|
|
98
|
-
head(urlOrApiInfo: string | ApiInfo, init: any):
|
|
98
|
+
head(urlOrApiInfo: string | ApiInfo, init: any): any;
|
|
99
99
|
/**
|
|
100
100
|
* Cancel an inflight API request
|
|
101
101
|
* @param {Promise<any>} request - The request promise to cancel
|
|
@@ -132,7 +132,7 @@ export declare class RestClient {
|
|
|
132
132
|
*/
|
|
133
133
|
endpoint(apiName: string): string;
|
|
134
134
|
/** private methods **/
|
|
135
|
-
private
|
|
135
|
+
private _sign;
|
|
136
136
|
private _request;
|
|
137
137
|
private _parseUrl;
|
|
138
138
|
}
|
package/lib-esm/RestClient.js
CHANGED
|
@@ -65,8 +65,7 @@ var RestClient = /** @class */ (function () {
|
|
|
65
65
|
*/
|
|
66
66
|
RestClient.prototype.ajax = function (urlOrApiInfo, method, init) {
|
|
67
67
|
return __awaiter(this, void 0, void 0, function () {
|
|
68
|
-
var parsed_url, url, region, service, custom_header, params, libraryHeaders, initParams, isAllResponse, custom_header_obj, _a, _b, search, parsedUrl;
|
|
69
|
-
var _this = this;
|
|
68
|
+
var parsed_url, url, region, service, custom_header, params, libraryHeaders, initParams, isAllResponse, custom_header_obj, _a, _b, search, parsedUrl, credentials, error_1, signedParams, response, error_2, headers, dateHeader, responseDate, requestDate;
|
|
70
69
|
return __generator(this, function (_c) {
|
|
71
70
|
switch (_c.label) {
|
|
72
71
|
case 0:
|
|
@@ -145,29 +144,43 @@ var RestClient = /** @class */ (function () {
|
|
|
145
144
|
}, {});
|
|
146
145
|
return [2 /*return*/, this._request(params, isAllResponse)];
|
|
147
146
|
}
|
|
148
|
-
|
|
149
|
-
|
|
150
|
-
|
|
151
|
-
|
|
152
|
-
|
|
153
|
-
|
|
154
|
-
|
|
155
|
-
|
|
156
|
-
|
|
157
|
-
|
|
158
|
-
|
|
159
|
-
|
|
160
|
-
|
|
161
|
-
|
|
162
|
-
|
|
163
|
-
|
|
164
|
-
|
|
165
|
-
|
|
166
|
-
|
|
167
|
-
|
|
168
|
-
|
|
169
|
-
|
|
170
|
-
|
|
147
|
+
_c.label = 4;
|
|
148
|
+
case 4:
|
|
149
|
+
_c.trys.push([4, 6, , 7]);
|
|
150
|
+
return [4 /*yield*/, this.Credentials.get()];
|
|
151
|
+
case 5:
|
|
152
|
+
credentials = _c.sent();
|
|
153
|
+
return [3 /*break*/, 7];
|
|
154
|
+
case 6:
|
|
155
|
+
error_1 = _c.sent();
|
|
156
|
+
logger.debug('No credentials available, the request will be unsigned');
|
|
157
|
+
return [2 /*return*/, this._request(params, isAllResponse)];
|
|
158
|
+
case 7:
|
|
159
|
+
_c.trys.push([7, 9, , 10]);
|
|
160
|
+
signedParams = this._sign(__assign({}, params), credentials, {
|
|
161
|
+
region: region,
|
|
162
|
+
service: service,
|
|
163
|
+
});
|
|
164
|
+
return [4 /*yield*/, axios(signedParams)];
|
|
165
|
+
case 8:
|
|
166
|
+
response = _c.sent();
|
|
167
|
+
return [2 /*return*/, isAllResponse ? response : response.data];
|
|
168
|
+
case 9:
|
|
169
|
+
error_2 = _c.sent();
|
|
170
|
+
logger.debug(error_2);
|
|
171
|
+
if (DateUtils.isClockSkewError(error_2)) {
|
|
172
|
+
headers = error_2.response.headers;
|
|
173
|
+
dateHeader = headers && (headers.date || headers.Date);
|
|
174
|
+
responseDate = new Date(dateHeader);
|
|
175
|
+
requestDate = DateUtils.getDateFromHeaderString(signedParams.headers['x-amz-date']);
|
|
176
|
+
// Compare local clock to the server clock
|
|
177
|
+
if (DateUtils.isClockSkewed(responseDate)) {
|
|
178
|
+
DateUtils.setClockOffset(responseDate.getTime() - requestDate.getTime());
|
|
179
|
+
return [2 /*return*/, this.ajax(urlOrApiInfo, method, init)];
|
|
180
|
+
}
|
|
181
|
+
}
|
|
182
|
+
throw error_2;
|
|
183
|
+
case 10: return [2 /*return*/];
|
|
171
184
|
}
|
|
172
185
|
});
|
|
173
186
|
});
|
|
@@ -308,7 +321,7 @@ var RestClient = /** @class */ (function () {
|
|
|
308
321
|
return response;
|
|
309
322
|
};
|
|
310
323
|
/** private methods **/
|
|
311
|
-
RestClient.prototype.
|
|
324
|
+
RestClient.prototype._sign = function (params, credentials, _a) {
|
|
312
325
|
var service = _a.service, region = _a.region;
|
|
313
326
|
var signerServiceInfoParams = params.signerServiceInfo, otherParams = __rest(params, ["signerServiceInfo"]);
|
|
314
327
|
var endpoint_region = region || this._region || this._options.region;
|
|
@@ -329,12 +342,7 @@ var RestClient = /** @class */ (function () {
|
|
|
329
342
|
}
|
|
330
343
|
logger.debug('Signed Request: ', signed_params);
|
|
331
344
|
delete signed_params.headers['host'];
|
|
332
|
-
return
|
|
333
|
-
.then(function (response) { return (isAllResponse ? response : response.data); })
|
|
334
|
-
.catch(function (error) {
|
|
335
|
-
logger.debug(error);
|
|
336
|
-
throw error;
|
|
337
|
-
});
|
|
345
|
+
return signed_params;
|
|
338
346
|
};
|
|
339
347
|
RestClient.prototype._request = function (params, isAllResponse) {
|
|
340
348
|
if (isAllResponse === void 0) { isAllResponse = false; }
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"RestClient.js","sourceRoot":"","sources":["../src/RestClient.ts"],"names":[],"mappings":"AAAA,qEAAqE;AACrE,sCAAsC;;AAEtC,OAAO,EACN,aAAa,IAAI,MAAM,EACvB,WAAW,EACX,SAAS,EACT,MAAM,GACN,MAAM,mBAAmB,CAAC;AAG3B,OAAO,KAA4B,MAAM,OAAO,CAAC;AACjD,OAAO,EAAE,KAAK,EAAE,MAAM,EAAE,MAAM,KAAK,CAAC;AAEpC,IAAM,MAAM,GAAG,IAAI,MAAM,CAAC,YAAY,CAAC,CAAC;AAExC;;;;;;;;;;;;EAYE;AACF;IAwBC;;OAEG;IACH,oBAAY,OAAmB;QAzBvB,YAAO,GAAW,WAAW,CAAC,CAAC,4CAA4C;QAC3E,aAAQ,GAAW,aAAa,CAAC,CAAC,2CAA2C;QAC7E,mBAAc,GAAG,SAAS,CAAC,CAAC,2CAA2C;QAE/E;;;;;;;;;;;;;WAaG;QACK,oBAAe,GAAoC,IAAI,CAAC;QAEhE,gBAAW,GAAG,WAAW,CAAC;QAMzB,IAAI,CAAC,QAAQ,GAAG,OAAO,CAAC;QACxB,MAAM,CAAC,KAAK,CAAC,aAAa,EAAE,IAAI,CAAC,QAAQ,CAAC,CAAC;QAC3C,IAAI,IAAI,CAAC,eAAe,IAAI,IAAI,EAAE;YACjC,IAAI,CAAC,eAAe,GAAG,IAAI,OAAO,EAAE,CAAC;SACrC;IACF,CAAC;IAED;;;;;;;EAOC;IACD;;;;;;OAMG;IACG,yBAAI,GAAV,UAAW,YAA8B,EAAE,MAAc,EAAE,IAAI
|
|
1
|
+
{"version":3,"file":"RestClient.js","sourceRoot":"","sources":["../src/RestClient.ts"],"names":[],"mappings":"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"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@aws-amplify/api-rest",
|
|
3
|
-
"version": "3.3.3-api-v6.
|
|
3
|
+
"version": "3.3.3-api-v6.23+6a0182db2",
|
|
4
4
|
"description": "Api-rest category of aws-amplify",
|
|
5
5
|
"main": "./lib/index.js",
|
|
6
6
|
"module": "./lib-esm/index.js",
|
|
@@ -46,7 +46,7 @@
|
|
|
46
46
|
"src"
|
|
47
47
|
],
|
|
48
48
|
"dependencies": {
|
|
49
|
-
"@aws-amplify/core": "5.5.3-api-v6.
|
|
49
|
+
"@aws-amplify/core": "5.5.3-api-v6.23+6a0182db2",
|
|
50
50
|
"axios": "0.26.0",
|
|
51
51
|
"tslib": "^1.8.0",
|
|
52
52
|
"url": "0.11.0"
|
|
@@ -56,7 +56,7 @@
|
|
|
56
56
|
"name": "API (rest client)",
|
|
57
57
|
"path": "./lib-esm/index.js",
|
|
58
58
|
"import": "{ Amplify, RestAPI }",
|
|
59
|
-
"limit": "
|
|
59
|
+
"limit": "31 kB"
|
|
60
60
|
}
|
|
61
61
|
],
|
|
62
62
|
"jest": {
|
|
@@ -103,5 +103,5 @@
|
|
|
103
103
|
"lib-esm"
|
|
104
104
|
]
|
|
105
105
|
},
|
|
106
|
-
"gitHead": "
|
|
106
|
+
"gitHead": "6a0182db2a02dd45a2fd2d0c5cf69ffeaf452cc1"
|
|
107
107
|
}
|
package/src/RestClient.ts
CHANGED
|
@@ -171,39 +171,42 @@ export class RestClient {
|
|
|
171
171
|
return this._request(params, isAllResponse);
|
|
172
172
|
}
|
|
173
173
|
|
|
174
|
-
|
|
175
|
-
|
|
176
|
-
credentials
|
|
177
|
-
|
|
178
|
-
|
|
179
|
-
|
|
180
|
-
|
|
181
|
-
|
|
182
|
-
|
|
183
|
-
|
|
184
|
-
|
|
185
|
-
|
|
186
|
-
|
|
187
|
-
|
|
188
|
-
|
|
189
|
-
|
|
190
|
-
|
|
191
|
-
|
|
192
|
-
|
|
193
|
-
|
|
194
|
-
|
|
195
|
-
|
|
196
|
-
|
|
197
|
-
|
|
198
|
-
|
|
199
|
-
|
|
200
|
-
|
|
201
|
-
|
|
202
|
-
|
|
203
|
-
|
|
204
|
-
|
|
174
|
+
let credentials;
|
|
175
|
+
try {
|
|
176
|
+
credentials = await this.Credentials.get();
|
|
177
|
+
} catch (error) {
|
|
178
|
+
logger.debug('No credentials available, the request will be unsigned');
|
|
179
|
+
return this._request(params, isAllResponse);
|
|
180
|
+
}
|
|
181
|
+
let signedParams;
|
|
182
|
+
try {
|
|
183
|
+
signedParams = this._sign({ ...params }, credentials, {
|
|
184
|
+
region,
|
|
185
|
+
service,
|
|
186
|
+
});
|
|
187
|
+
const response = await axios(signedParams);
|
|
188
|
+
return isAllResponse ? response : response.data;
|
|
189
|
+
} catch (error) {
|
|
190
|
+
logger.debug(error);
|
|
191
|
+
if (DateUtils.isClockSkewError(error)) {
|
|
192
|
+
const { headers } = error.response;
|
|
193
|
+
const dateHeader = headers && (headers.date || headers.Date);
|
|
194
|
+
const responseDate = new Date(dateHeader);
|
|
195
|
+
const requestDate = DateUtils.getDateFromHeaderString(
|
|
196
|
+
signedParams.headers['x-amz-date']
|
|
197
|
+
);
|
|
198
|
+
|
|
199
|
+
// Compare local clock to the server clock
|
|
200
|
+
if (DateUtils.isClockSkewed(responseDate)) {
|
|
201
|
+
DateUtils.setClockOffset(
|
|
202
|
+
responseDate.getTime() - requestDate.getTime()
|
|
203
|
+
);
|
|
204
|
+
|
|
205
|
+
return this.ajax(urlOrApiInfo, method, init);
|
|
206
|
+
}
|
|
205
207
|
}
|
|
206
|
-
|
|
208
|
+
throw error;
|
|
209
|
+
}
|
|
207
210
|
}
|
|
208
211
|
|
|
209
212
|
/**
|
|
@@ -356,7 +359,7 @@ export class RestClient {
|
|
|
356
359
|
|
|
357
360
|
/** private methods **/
|
|
358
361
|
|
|
359
|
-
private
|
|
362
|
+
private _sign(params, credentials, { service, region }) {
|
|
360
363
|
const { signerServiceInfo: signerServiceInfoParams, ...otherParams } =
|
|
361
364
|
params;
|
|
362
365
|
|
|
@@ -391,12 +394,7 @@ export class RestClient {
|
|
|
391
394
|
|
|
392
395
|
delete signed_params.headers['host'];
|
|
393
396
|
|
|
394
|
-
return
|
|
395
|
-
.then(response => (isAllResponse ? response : response.data))
|
|
396
|
-
.catch(error => {
|
|
397
|
-
logger.debug(error);
|
|
398
|
-
throw error;
|
|
399
|
-
});
|
|
397
|
+
return signed_params;
|
|
400
398
|
}
|
|
401
399
|
|
|
402
400
|
private _request(params, isAllResponse = false) {
|