Making HTTPs requests seems oddly difficult. Why can’t an HTTP library just figure things out for me like curl does? It mostly can.
Ruby
You have to breakup the URL into a host, port and path, then make a request with use_ssl.
$ irb
require 'net/http'
uri = URI::parse("https://artsy.net/api/v1/system/up")
Net::HTTP.start uri.host, uri.port, use_ssl: (uri.scheme == "https") do |http|
request = Net::HTTP::Get.new(uri.path)
response = http.request request
puts response.body
end
Node.js
A little simpler, superagent, also known as “ajax with less suck”, can take care of everything.
$ npm install -g superagent
$ coffee
http = require('superagent')
http.get('https://artsy.net/api/v1/system/up').end((err, res) -> console.log res.body)