forked from microsoftgraph/msgraph-sdk-javascript
-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathResponseHandler.js
More file actions
57 lines (57 loc) · 1.83 KB
/
Copy pathResponseHandler.js
File metadata and controls
57 lines (57 loc) · 1.83 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
"use strict";
Object.defineProperty(exports, "__esModule", { value: true });
var ResponseHandler = (function () {
function ResponseHandler() {
}
ResponseHandler.init = function (err, res, callback) {
if (res && res.ok) {
callback(null, res.body, res);
}
else {
if (err == null && res.error !== null)
callback(ResponseHandler.ParseError(res), null, res);
else
callback(ResponseHandler.ParseError(err), null, res);
}
};
ResponseHandler.ParseError = function (rawErr) {
var errObj;
if (!('rawResponse' in rawErr)) {
if (rawErr.response !== undefined && rawErr.response.body !== null && 'error' in rawErr.response.body) {
errObj = rawErr.response.body.error;
}
}
else {
errObj = JSON.parse(rawErr.rawResponse.replace(/^\uFEFF/, '')).error;
}
var statusCode;
if (rawErr.response !== undefined && rawErr.response.status !== undefined) {
statusCode = rawErr.response.status;
}
else {
statusCode = rawErr.statusCode;
}
if (errObj === undefined) {
return {
statusCode: statusCode,
code: null,
message: null,
requestId: null,
date: new Date(),
body: null
};
}
var err = {
statusCode: statusCode,
code: errObj.code,
message: errObj.message,
requestId: errObj.innerError["request-id"],
date: new Date(errObj.innerError.date),
body: errObj
};
return err;
};
return ResponseHandler;
}());
exports.ResponseHandler = ResponseHandler;
//# sourceMappingURL=ResponseHandler.js.map