getting a “connection reset by peer” error when hi

2019-04-06 05:53发布

I'm trying to pull Google Contacts into a Rails application using the Google Contacts API. I've completed the Oauth2 handshake, and am now requesting the protected resource with my access token. Here is the code:

uri = URI('https://www.google.com/m8/feeds/contacts/default/full')
params = { :client_id => APP_CONFIG[:google_api_client_id],
           :access_token => auth.access_token,
           "max-results".to_sym => max_results
         }

uri.query = URI.encode_www_form(params)
res = Net::HTTP.get_response(uri)

1条回答
放我归山
2楼-- · 2019-04-06 06:41

You're requesting an HTTPS resource, so your GET request needs to use SSL encryption.

http://ruby-doc.org/stdlib-1.9.3/libdoc/net/http/rdoc/Net/HTTP.html#method-i-use_ssl-3F

So your last line should look like:

  http = Net::HTTP.new(uri.host, uri.port)
  http.use_ssl = true
  http.verify_mode = OpenSSL::SSL::VERIFY_NONE # You should use VERIFY_PEER in production
  request = Net::HTTP::Get.new(uri.request_uri)
  res = http.request(request)
查看更多
登录 后发表回答