victorops
Version:
VictorOps client
60 lines (46 loc) • 1.41 kB
JavaScript
// Generated by CoffeeScript 1.6.3
(function() {
var HttpClient, http, https, parser, querystring;
http = require('http');
https = require('https');
querystring = require('querystring');
parser = require('url');
HttpClient = (function() {
var buildOptions, protocolFor;
function HttpClient() {}
HttpClient.prototype.request = function(parameters) {
var request;
request = protocolFor(parameters.url).request(buildOptions(parameters), function(response) {
response.setEncoding('utf8');
return response.on('data', parameters.done || function(response) {});
});
request.on('error', parameters.error || function(error) {
throw error;
});
request.write(parameters.body || '');
return request.end();
};
protocolFor = function(url) {
var parsedUrl;
parsedUrl = parser.parse(url);
if (parsedUrl.protocol === 'https:') {
return https;
} else {
return http;
}
};
buildOptions = function(parameters) {
var parsedUrl;
parsedUrl = parser.parse(parameters.url);
return {
method: parameters.method || 'GET',
host: parsedUrl.host,
port: parsedUrl.port,
path: parsedUrl.path,
headers: parameters.headers || {}
};
};
return HttpClient;
})();
module.exports = HttpClient;
}).call(this);