UNPKG

waze-api

Version:
40 lines (39 loc) 1.29 kB
"use strict"; var __importDefault = (this && this.__importDefault) || function (mod) { return (mod && mod.__esModule) ? mod : { "default": mod }; }; Object.defineProperty(exports, "__esModule", { value: true }); exports.request = void 0; const https_1 = __importDefault(require("https")); const request = (url, method, data) => { const data_ = data ? JSON.stringify(data) : ""; let raw = ""; return new Promise((resolve, reject) => { const req = https_1.default.request(url, { method, port: 443, headers: { "Content-Length": Buffer.byteLength(data_, "utf-8"), "Content-Type": "application/json", }, }, (res) => { if (res.statusCode && res.statusCode >= 400) { reject(new Error(`Request fail with status code ${res.statusCode}`)); } res.on("data", (d) => { raw += d.toString(); }); }); if (method === "POST") req.write(data_); /* istanbul ignore next */ req.on("error", (e) => { reject(e); }); req.on("close", () => { resolve(JSON.parse(raw)); }); req.end(); }); }; exports.request = request;