首页 > 解决方案 > 在 rails 中使用 javascript_pack_tag 会导致 EOFError

问题描述

看起来 public/packs/js 中的文件无法加载。

这些是视图中的 javascript 标签:

= javascript_include_tag 'application'
= javascript_pack_tag 'application'

浏览器控制台中的错误:

net::ERR_ABORTED 500 (Internal Server Error)

这是 rails 日志中的错误:

2020-05-27 11:04:05 -0400: Rack app error handling request { GET /packs/js/application-94e1ca1d6a639b3ce542.js }
#<EOFError: end of file reached>
/Users/usr/.rbenv/versions/2.6.3/lib/ruby/2.6.0/net/protocol.rb:225:in `rbuf_fill'
/Users/usr/.rbenv/versions/2.6.3/lib/ruby/2.6.0/net/protocol.rb:191:in `readuntil'
/Users/usr/.rbenv/versions/2.6.3/lib/ruby/2.6.0/net/protocol.rb:201:in `readline'
/Users/usr/.rbenv/versions/2.6.3/lib/ruby/2.6.0/net/http/response.rb:40:in `read_status_line'
/Users/usr/.rbenv/versions/2.6.3/lib/ruby/2.6.0/net/http/response.rb:29:in `read_new'
/Users/usr/.rbenv/versions/2.6.3/lib/ruby/gems/2.6.0/gems/rack-proxy-0.6.5/lib/net_http_hacked.rb:53:in `begin_request_hacked'
/Users/usr/.rbenv/versions/2.6.3/lib/ruby/gems/2.6.0/gems/rack-proxy-0.6.5/lib/rack/http_streaming_response.rb:60:in `response'
/Users/usr/.rbenv/versions/2.6.3/lib/ruby/gems/2.6.0/gems/rack-proxy-0.6.5/lib/rack/http_streaming_response.rb:29:in `headers'
/Users/usr/.rbenv/versions/2.6.3/lib/ruby/gems/2.6.0/gems/rack-proxy-0.6.5/lib/rack/proxy.rb:120:in `perform_request'
/Users/usr/.rbenv/versions/2.6.3/lib/ruby/gems/2.6.0/gems/webpacker-4.0.7/lib/webpacker/dev_server_proxy.rb:27:in `perform_request'
/Users/usr/.rbenv/versions/2.6.3/lib/ruby/gems/2.6.0/gems/rack-proxy-0.6.5/lib/rack/proxy.rb:57:in `call'
/Users/usr/.rbenv/versions/2.6.3/lib/ruby/gems/2.6.0/gems/railties-5.1.7/lib/rails/engine.rb:522:in `call'
/Users/usr/.rbenv/versions/2.6.3/lib/ruby/gems/2.6.0/gems/puma-4.3.3/lib/puma/configuration.rb:228:in `call'
/Users/usr/.rbenv/versions/2.6.3/lib/ruby/gems/2.6.0/gems/puma-4.3.3/lib/puma/server.rb:682:in `handle_request'
/Users/usr/.rbenv/versions/2.6.3/lib/ruby/gems/2.6.0/gems/puma-4.3.3/lib/puma/server.rb:472:in `process_client'
/Users/usr/.rbenv/versions/2.6.3/lib/ruby/gems/2.6.0/gems/puma-4.3.3/lib/puma/server.rb:328:in `block in run'
/Users/usr/.rbenv/versions/2.6.3/lib/ruby/gems/2.6.0/gems/puma-4.3.3/lib/puma/thread_pool.rb:134:in `block in spawn_thread'
2020-05-27 11:04:05 -0400: Rack app error handling request { GET /packs/js/application-94e1ca1d6a639b3ce542.js }

我已经重新安装了所有 gem、node 和 webpacker,但问题仍然存在。我在某处读到 rbuf_fill 可能需要 https,但我不确定在哪里检查或进行哪些更改。有人有什么想法吗?

标签: javascriptruby-on-railsreactjsnpm

解决方案


我想到了。我在 Docker 中运行了另一个 Rails 应用程序。停止容器后,问题以某种方式解决。


推荐阅读