/** @type {import("node-fetch").default} */ // @ts-ignore const fetch = require("node-fetch") async function request(url, options = {}) { if (!options.headers) options.headers = {} options.headers = { "user-agent": "CloudTubeBackend/1.0" } let result try { result = await fetch(url, options) } catch (error) { return { ok: false, result: error } } // not json? if (result.headers.get("content-type").indexOf("application/json") == -1) return { ok: false, result: result } return { ok: true, result: await result.json() } } module.exports.request = request