这很有效:
require 'net/http'
uri = URI('http://api.twitter.com/1/statuses/user_timeline.json')
args = {include_entities: 0, include_rts: 0, screen_name: 'johndoe', count: 2, trim_user: 1}
uri.query = URI.encode_www_form(args)
resp = Net::HTTP.get_response(uri)
puts resp.body
但是从http
更改为https
会导致无意义的错误。我不是在问为什么这个错误毫无意义,我只想知道get_response
对https
做最近的方法是什么?
我在Net::HTTP文档中看到了'HTTPS'示例,但它看起来不太令人印象深刻,并且会让我从参数哈希手动编写URL - 没有用。
答案 0 :(得分:22)
这是一个适用于Ruby 1.9.3
的示例require "net/http"
uri = URI.parse("https://api.twitter.com/1/statuses/user_timeline.json")
args = {include_entities: 0, include_rts: 0, screen_name: 'johndoe', count: 2, trim_user: 1}
uri.query = URI.encode_www_form(args)
http = Net::HTTP.new(uri.host, uri.port)
http.use_ssl = true
request = Net::HTTP::Get.new(uri.request_uri)
response = http.request(request)
response.body