जवाबों:
खुले-उरी मानक रूबी लाइब्रेरी का हिस्सा है, और यह व्यवहार को फिर से परिभाषित करेगा 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
। इसके अलावा रूबोकॉप सुरक्षा नियम भी मिलते हैं।