ruby-on-rails - 点击 Google Contacts API 时出现 "connection reset by peer"错误

标签 ruby-on-rails ruby api http

我正在尝试使用 Google Contacts API 将 Google Contacts 拉入 Rails 应用程序。我已经完成了 Oauth2 握手,现在正在使用我的访问 token 请求 protected 资源。这是代码:

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)

最佳答案

您请求的是 HTTPS 资源,因此您的 GET 请求需要使用 SSL 加密。

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

所以你的最后一行应该是这样的:

  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)

关于ruby-on-rails - 点击 Google Contacts API 时出现 "connection reset by peer"错误,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9336884/

相关文章:

ruby-on-rails - Reactjs-rails 的预渲染问题

html - 为什么这个 html/css/rails 模板没有正确嵌套?

ruby - 如何为仅限 Ruby 的项目将可用语言环境添加到 i18n?

ruby-on-rails - 如何在 ActiveSupport::Concern 中获取类名?

api - 是否可以用 'unseen=0' 标记消息线程?

ruby-on-rails - 如何创建父子映射?

ruby-on-rails - ruby /Rails : Natural increase of string (succ)

ruby - Chef 和 erb 模板。如何使用 bool 代码块

php - Autocompleteplus如何检测用户语言(真实语言而不是浏览器)?

ajax - Google AJAX Language API 中文