@gameroom/cli
Version:
A command line tool for Gameroom
34 lines (27 loc) • 824 B
JavaScript
const http = require('http')
const https = require('https')
module.exports = ({ url, auth }) => {
const lib = url.startsWith('https://') ? https : http
const [host, port] = url.split('://')[1].split('/')[0].split(':')
const path = url.replace(`https://${host}`, '')
const params = {
auth,
method: 'GET',
host,
port: port || url.startsWith('https://') ? 443 : 80,
path: path || '/'
}
return new Promise((resolve, reject) => {
const req = lib.request(params, res => {
if (res.statusCode < 200 || res.statusCode >= 300) return reject(res)
const data = []
res.on('data', chunk => {
data.push(chunk)
})
res.on('end', () => resolve(JSON.parse(Buffer.concat(data).toString())))
})
req.on('error', reject)
// IMPORTANT
req.end()
})
}