ошибка «сброс соединения по одноранговому соединению» при попадании в API контактов Google - PullRequest
9 голосов
/ 18 февраля 2012

Я пытаюсь перетащить контакты Google в приложение Rails, используя API контактов Google. Я завершил рукопожатие Oauth2 и теперь запрашиваю защищенный ресурс с моим токеном доступа. Вот код:

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 Ответ

32 голосов
/ 18 февраля 2012

Вы запрашиваете 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)
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...