okx-api
Version:
Complete & robust Node.js SDK for OKX's REST APIs and WebSockets, with TypeScript & end-to-end tests
49 lines • 1.51 kB
JavaScript
;
Object.defineProperty(exports, "__esModule", { value: true });
exports.programId = exports.programKey = void 0;
exports.serializeParams = serializeParams;
exports.getRestBaseUrl = getRestBaseUrl;
exports.isWsPong = isWsPong;
function serializeParams(params, method, strict_validation = false) {
if (!params) {
return '';
}
if (method !== 'GET') {
return JSON.stringify(params);
}
const queryString = Object.keys(params)
.map((key) => {
const value = params[key];
if (strict_validation === true && typeof value === 'undefined') {
throw new Error('Failed to sign API request due to undefined parameter');
}
return `${key}=${value}`;
})
.join('&');
// Prevent trailing `?` if no params are provided
return queryString ? '?' + queryString : queryString;
}
exports.programKey = 'tag';
exports.programId = '159881cb7207BCDE';
function getRestBaseUrl(market, restClientOptions) {
if (restClientOptions.baseUrl) {
return restClientOptions.baseUrl;
}
switch (market) {
default:
case 'demo':
case 'prod': {
return 'https://www.okx.com';
}
}
}
function isWsPong(response) {
if (response.pong || response.ping) {
return true;
}
return (response.request &&
response.request.op === 'ping' &&
response.ret_msg === 'pong' &&
response.success === true);
}
//# sourceMappingURL=requestUtils.js.map