Respuestas:
open-uri es parte de la biblioteca estándar de Ruby, y redefinirá el comportamiento de open
para que pueda abrir una URL, así como un archivo local. Devuelve un File
objeto, por lo que debería poder llamar a métodos como read
y 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
no transmitirá un archivo, por lo que no puede leer un primer 4k de él. open-uri
leerá un archivo completo en la memoria en el momento de la apertura.
URI.parse('http://www.stackoverflow.com').open { |f| f.read }
Si busca una forma de asegurarse, no llame Kernal.open
. También evita las reglas de seguridad de Rubocop.