Réponses:
open-uri fait partie de la bibliothèque Ruby standard, et il redéfinira le comportement de open
afin que vous puissiez ouvrir une URL, ainsi qu'un fichier local. Il renvoie un File
objet, vous devriez donc pouvoir appeler des méthodes comme read
et 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
cela ne diffusera pas un fichier, vous ne pouvez donc pas en lire un premier 4k. open-uri
lira un fichier entier en mémoire au moment de l'ouverture.
URI.parse('http://www.stackoverflow.com').open { |f| f.read }
Si vous cherchez un moyen de vous assurer, il n'appelle pas Kernal.open
. Contourne également les règles de sécurité de rubocop.