UNPKG

migros-api-wrapper

Version:

Making the api of migros more accessible to the public.

63 lines 2.65 kB
"use strict"; var __importDefault = (this && this.__importDefault) || function (mod) { return (mod && mod.__esModule) ? mod : { "default": mod }; }; Object.defineProperty(exports, "__esModule", { value: true }); exports.postRequestBypass = exports.postRequest = exports.getRequestBypass = exports.getRequest = void 0; const appendParametersToUrl_1 = require("./appendParametersToUrl"); const addCookieToHeaders_1 = require("./addCookieToHeaders"); const axios_1 = __importDefault(require("axios")); const https_1 = __importDefault(require("https")); const axiosClient = axios_1.default.create({ httpsAgent: new https_1.default.Agent({ minVersion: "TLSv1.3", }), }); async function getRequest(url, options, headers = {}, cookies = {}) { url = (0, appendParametersToUrl_1.appendParametersToUrl)(url, options); headers = (0, addCookieToHeaders_1.addCookieToHeaders)(headers, cookies); const response = await fetch(url, { method: "GET", headers: headers, }); return response; } exports.getRequest = getRequest; async function getRequestBypass(url, options, headers = {}, cookies = {}) { if (!headers["User-Agent"] && process.env.MIGROS_API_WRAPPER_USERAGENT) { headers["User-Agent"] = process.env.MIGROS_API_WRAPPER_USERAGENT; } url = (0, appendParametersToUrl_1.appendParametersToUrl)(url, options); headers = (0, addCookieToHeaders_1.addCookieToHeaders)(headers, cookies); const response = await axiosClient(url, { method: "GET", headers: headers, }); return response; } exports.getRequestBypass = getRequestBypass; async function postRequest(url, body, options, headers = {}, cookies = {}) { url = (0, appendParametersToUrl_1.appendParametersToUrl)(url, options); headers = (0, addCookieToHeaders_1.addCookieToHeaders)(headers, cookies); return await fetch(url, { method: "POST", body: JSON.stringify(body) || undefined, headers: headers, }); } exports.postRequest = postRequest; async function postRequestBypass(url, body, options, headers = {}, cookies = {}) { if (!headers["User-Agent"] && process.env.MIGROS_API_WRAPPER_USERAGENT) { headers["User-Agent"] = process.env.MIGROS_API_WRAPPER_USERAGENT; } url = (0, appendParametersToUrl_1.appendParametersToUrl)(url, options); headers = (0, addCookieToHeaders_1.addCookieToHeaders)(headers, cookies); const response = await axiosClient(url, { method: "POST", data: body, headers: headers, }); return response; } exports.postRequestBypass = postRequestBypass; //# sourceMappingURL=requests.js.map