summaryrefslogtreecommitdiff
path: root/lib/overwrite.rb
diff options
context:
space:
mode:
authorgebele <gebele@in-silico.ch>2013-05-07 17:06:27 +0200
committergebele <gebele@in-silico.ch>2013-05-07 17:06:27 +0200
commitae55440e99529c18367f93e3f6e6b40816767f44 (patch)
tree22cafc510d829a202d881da9175a2e68fcbf4d90 /lib/overwrite.rb
parent4bc69e53be060e8de1d9938e94b3bb0938016a84 (diff)
exchanged accessible rule with HEAD request
Diffstat (limited to 'lib/overwrite.rb')
-rw-r--r--lib/overwrite.rb8
1 files changed, 5 insertions, 3 deletions
diff --git a/lib/overwrite.rb b/lib/overwrite.rb
index d1f3d9d..10a68e7 100644
--- a/lib/overwrite.rb
+++ b/lib/overwrite.rb
@@ -91,13 +91,15 @@ module URI
def self.accessible?(uri, subjectid=nil)
parsed_uri = URI.parse(uri + (subjectid ? "?subjectid=#{CGI.escape subjectid}" : ""))
http_code = URI.task?(uri) ? 600 : 400
- unless URI.ssl? uri
- Net::HTTP.get_response(parsed_uri).code.to_i < http_code
+ unless (URI.ssl? uri) == true
+ http = Net::HTTP.new(parsed_uri.host, parsed_uri.port)
+ request = Net::HTTP::Head.new(parsed_uri.request_uri)
+ http.request(request).code.to_i < http_code
else
http = Net::HTTP.new(parsed_uri.host, parsed_uri.port)
http.use_ssl = true
http.verify_mode = OpenSSL::SSL::VERIFY_NONE
- request = Net::HTTP::Get.new(parsed_uri.request_uri)
+ request = Net::HTTP::Head.new(parsed_uri.request_uri)
http.request(request).code.to_i < http_code
end
rescue