godprotocol
Version:
A distributed computing environment
94 lines (79 loc) • 1.93 kB
JavaScript
const http = require("https");
const get_request = async (payload, cb) => {
let req = http.request(
{
...payload.options,
method: "GET",
headers: {
"Content-Type": "application/json",
},
},
(res) => {
let data = "";
res.on("data", (chunk) => {
data += chunk;
// cb && cb(chunk);
});
res.on("end", () => {
cb && cb(data);
// console.log("Response:", data);
});
}
);
req.on("error", (e) => {
cb && cb(e.message);
console.error(`Problem with request: ${e.message}`);
});
req.end();
};
const post_request = (payload, cb) => {
// let options = {
// hostname: 'example.com',
// port: 80,
// path: '/api/users',
// method: 'POST',
// headers: {
// 'Content-Type': 'application/json',
// 'Content-Length': Buffer.byteLength(postData),
// },
// };
console.log(payload);
return new Promise((resolve, reject) => {
let data =
typeof payload.data !== "string"
? JSON.stringify(payload.data)
: payload.data;
console.log('uh')
let req = http.request(
{
...payload.options,
method: "POST",
headers: {
...payload.headers,
"Content-Type": "application/json",
"Content-Length": Buffer.byteLength(data),
},
rejectUnauthorized: false,
minVersion: "TLSv1.2",
},
(res) => {
let data = "";
res.on("data", (chunk) => {
data += chunk;
});
res.on("end", () => {
console.log('hey')
resolve(JSON.parse(data));
// console.log("Response:", data);
});
}
);
req.on("error", (e) => {
reject(e);
console.error(`Problem with request: ${e.message}`);
});
req.write(data);
req.end();
});
};
export { get_request, post_request };