From 782e282058070670ee4405914200e1f6a807072d Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E9=82=B1=E5=8D=9A=E4=BA=9E?= Date: Mon, 11 Jan 2021 20:29:49 +0800 Subject: [PATCH] fix https cert error --- app/models/site_feed.rb | 20 +++++++++++++++----- 1 file changed, 15 insertions(+), 5 deletions(-) diff --git a/app/models/site_feed.rb b/app/models/site_feed.rb index 7b8e425..62fce13 100644 --- a/app/models/site_feed.rb +++ b/app/models/site_feed.rb @@ -49,19 +49,29 @@ class SiteFeed anns end def get_response_body(uri) - res = Net::HTTP.get_response(uri) + res = Net::HTTP.start(uri.host, uri.port, + :use_ssl => uri.scheme == 'https', + open_timeout: 60,read_timeout: 60, + verify_mode: OpenSSL::SSL::VERIFY_NONE) do |http| + req = Net::HTTP::Get.new(uri) + http.request(req) + end if res.code == "302" || res.code == "301" location = res['Location'] cookie = res['Set-Cookie'] - headers = { - 'Cookie' => cookie, - } if location[0] == "/" uri = URI.parse("#{uri.scheme}://#{uri.host}#{location}") else uri = URI.parse(location) end - res = Net::HTTP.get_response(uri,nil,headers) + res = Net::HTTP.start(uri.host, uri.port, + :use_ssl => uri.scheme == 'https', + open_timeout: 60,read_timeout: 60, + verify_mode: OpenSSL::SSL::VERIFY_NONE) do |http| + req = Net::HTTP::Get.new(uri) + req['Cookie'] = cookie + http.request(req) + end return res.body else return res.body