2012-02-17 29 views
9

Tôi đang cố gắng kéo Danh bạ Google vào ứng dụng Rails bằng API Danh sách liên hệ của Google. Tôi đã hoàn tất việc bắt tay Oauth2 và hiện đang yêu cầu tài nguyên được bảo vệ bằng mã thông báo truy cập của mình. Đây là mã:gặp lỗi "đặt lại kết nối ngang hàng" khi nhấn API Danh bạ Google

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) 

Trả lời

30

Bạn đang yêu cầu một nguồn tài nguyên HTTPS, vì vậy yêu cầu GET của bạn cần phải sử dụng mã hóa SSL.

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

Vì vậy, dòng cuối cùng của bạn sẽ giống như thế:

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) 
Các vấn đề liên quan