"没有这样的文件或目录@ rb_sysopen"使用OpenURI

Jam*_*mie 11 ruby open-uri ruby-on-rails

我最近遇到了使用OpenURI的问题.每种open方法都会导致以下错误:

"No such file or directory @ rb_sysopen".
Run Code Online (Sandbox Code Playgroud)

我的代码看起来像下面这样:

data = open("http://google.ca/")
Run Code Online (Sandbox Code Playgroud)

我添加gem 'nokogiri'到我的Gemfile运行后不久就注意到了这个错误bundle install,虽然我没有迹象表明这是否会导致问题并且已经删除了该条目而对问题没有产生任何积极影响.任何帮助,将不胜感激.

小智 34

尝试require 'open-uri'在代码之前写.


fgu*_*len 28

我正在使用 Ruby 3.0.1 和以下部分:

require "open-uri"
Run Code Online (Sandbox Code Playgroud)

我必须明确地调用URI.open而不是仅仅open

data = URI.open("http://google.ca/")
Run Code Online (Sandbox Code Playgroud)

也许这是新的 Ruby 版本的问题

  • 以下是[相关提交](https://github.com/ruby/open-uri/commit/53862fa35887a34a8060aebf2241874240c2986a)和[问题](https://bugs.ruby-lang.org/issues/15893)。 (2认同)