UNPKG

run-api

Version:

npm package to resolve CORS problem

157 lines (133 loc) 3.96 kB
// const fetch = require("node-fetch"); import fetch from "node-fetch"; // const CORS_RESOLVER_OPTIONS = { // origin: '*', // methods: ['GET', 'POST', 'PUT', 'PATCH', 'DELETE'], // allowedHeaders: ['Content-Type', 'Authorization'], // credentials: true, // maxAge: 3600, // }; // const CORS_RESOLVER_API_URL = "http://localhost:8001/api/v1/cors-resolver"; // const CORS_RESOLVER_API_URL = "http://65.1.169.125:3050/api/v1/cors-resolver"; const CORS_RESOLVER_API_URL = "https://run-api.onrender.com/api/v1/cors-resolver"; // <====================== GET ======================> const get = async (reqUrl, reqOptions) => { try { const response = await fetch(`${CORS_RESOLVER_API_URL}?${reqUrl}`, { method: "GET", headers: { "Content-Type": "application/json;charset=UTF-8", "Access-Control-Allow-Origin": "*", ...(reqOptions ?? reqOptions?.headers), }, }); const resData = await response.json(); // console.log("resData", resData); return resData; } catch (err) { console.log("err", err); } }; // <====================== POST ======================> const post = async (reqUrl, reqBody, reqOptions) => { if (reqBody) { try { const response = await fetch(`${CORS_RESOLVER_API_URL}?${reqUrl}`, { method: "POST", headers: { "Content-Type": "application/json;charset=UTF-8", "Access-Control-Allow-Origin": "*", ...(reqOptions ?? reqOptions?.headers), }, body: JSON.stringify(reqBody), }); const resData = await response.json(); // console.log("resData", resData); return resData; } catch (err) { console.log("err", err); } } else { return { status: "error", message: "reqBody is required" }; } }; // <====================== PUT ======================> const put = async (reqUrl, reqBody, reqOptions) => { if (reqBody) { try { const response = await fetch(`${CORS_RESOLVER_API_URL}?${reqUrl}`, { method: "PUT", headers: { "Content-Type": "application/json;charset=UTF-8", "Access-Control-Allow-Origin": "*", ...(reqOptions ?? reqOptions?.headers), }, body: JSON.stringify(reqBody), }); const resData = await response.json(); // console.log("resData", resData); return resData; } catch (err) { console.log("err", err); } } else { return { status: "error", message: "reqBody is required" }; } }; // <====================== PATCH ======================> const patch = async (reqUrl, reqBody, reqOptions) => { if (reqBody) { try { const response = await fetch(`${CORS_RESOLVER_API_URL}?${reqUrl}`, { method: "PATCH", headers: { "Content-Type": "application/json;charset=UTF-8", "Access-Control-Allow-Origin": "*", ...(reqOptions ?? reqOptions?.headers), }, body: JSON.stringify(reqBody), }); const resData = await response.json(); // console.log("resData", resData); return resData; } catch (err) { console.log("err", err); } } else { return { status: "error", message: "reqBody is required" }; } }; // <====================== DELETE ======================> const delele = async (reqUrl, reqOptions) => { try { const response = await fetch(`${CORS_RESOLVER_API_URL}?${reqUrl}`, { method: "DELETE", headers: { "Content-Type": "application/json;charset=UTF-8", "Access-Control-Allow-Origin": "*", ...(reqOptions ?? reqOptions?.headers), }, }); const resData = await response.json(); // console.log("resData", resData); return resData; } catch (err) { console.log("err", err); } }; // export // module.exports = { // get, // post, // put, // patch, // delele, // }; export default { get, post, put, patch, delele, };