payunitjs-test
Version:
PayUnit is Seven's Payment aggregator created @SevenGroups by SevenGPS Core Engineers and tested by Silicon Valley professionals and Google experts
52 lines (49 loc) • 1.52 kB
JavaScript
;
Object.defineProperty(exports, "__esModule", {
value: true
});
exports.HttpDigest = HttpDigest;
function HttpDigest() {
var credentials = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : { apiUsername: "", apiPassword: "", x_api_key: "", mode: "" };
var request = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {
url: "",
payload: {},
uri: "",
method: ""
};
var callback = arguments[2];
var myHeaders = new Headers();
myHeaders.append("Content-Type", "application/json");
// myHeaders.append("mode", "no-cors");
myHeaders.append("mode", credentials.mode);
myHeaders.append("x-api-key", credentials.x_api_key);
myHeaders.append('authorization', "Basic " + btoa(credentials.apiUsername + ":" + credentials.apiPassword));
if (request.method === "GET") {
fetch(request.url, {
method: request.method,
headers: myHeaders
}).then(function (response) {
return response.json();
}).then(function (data) {
callback(data);
}).catch(function (response) {
callback(response);
});
} else {
fetch(request.url, {
method: request.method,
headers: myHeaders,
body: JSON.stringify(request.payload)
}).then(function (response) {
return response.json();
}).then(function (data) {
if (data.body) {
callback(data.body);
} else {
callback(data);
}
}).catch(function (response) {
callback(response);
});
}
}