जवाबों:
खुले-उरी मानक रूबी लाइब्रेरी का हिस्सा है, और यह व्यवहार को फिर से परिभाषित करेगा openताकि आप एक यूआरएल, साथ ही एक स्थानीय फ़ाइल खोल सकें। यह एक Fileऑब्जेक्ट लौटाता है , इसलिए आपको जैसे readऔर कॉल करने में सक्षम होना चाहिए readlines।
require 'open-uri'
file_contents = open('local-file.txt') { |f| f.read }
web_contents = open('http://www.stackoverflow.com') {|f| f.read }
content = open("http://example.com").read
open-uri नहीं होगी , इसलिए आप इसके पहले 4k को नहीं पढ़ सकते हैं। खोलने के क्षण में मेमोरी के लिए एक पूरी फ़ाइल पढ़ेंगे । open-uri
URI.parse('http://www.stackoverflow.com').open { |f| f.read }यदि आप बीमा कराने का तरीका ढूंढते हैं तो यह कॉल नहीं करता है Kernal.open। इसके अलावा रूबोकॉप सुरक्षा नियम भी मिलते हैं।