From 1b7092fd3491023613e3f8fcb5179dfba609db8f Mon Sep 17 00:00:00 2001 From: shockrah Date: Thu, 28 Jan 2021 17:54:49 -0800 Subject: [PATCH] Simple request/response api to wrap 'got' calls away --- freechat-client/src/request.js | 19 +++++++++++++++++++ freechat-client/src/response.js | 7 +++++++ 2 files changed, 26 insertions(+) create mode 100644 freechat-client/src/request.js create mode 100644 freechat-client/src/response.js diff --git a/freechat-client/src/request.js b/freechat-client/src/request.js new file mode 100644 index 0000000..156831e --- /dev/null +++ b/freechat-client/src/request.js @@ -0,0 +1,19 @@ +const got = require('got') +const { Response } = require('./response.js') + +/** + * + * @param {String} method GET POST DELETE + * @param {String} url full target url + * @param {Object} params Raw object of params to send + * + * @returns Response + */ +exports.Request = async function (method, url, params) { + try { + const result = await got(url, {json: params, method: method}) + return new Response(result.statusCode, result.body, null) + } catch(err) { + return new Response(null, null, err) + } +} \ No newline at end of file diff --git a/freechat-client/src/response.js b/freechat-client/src/response.js new file mode 100644 index 0000000..0b11ef1 --- /dev/null +++ b/freechat-client/src/response.js @@ -0,0 +1,7 @@ +exports.Response = class Response { + constructor(code, body, err) { + this.status_code = code + this.body = body + this.err = err + } +}