如何修复查找文件 /sw/js 的 GET 请求的 RoutingError

Bha*_*pta 2 ruby-on-rails ruby-on-rails-5

我要访问正在呈现 JSON 响应的 URL 端点,但我在 Rails 服务器日志中看到此错误:

\n\n
\n

于 2019-07-08 22:39:43 +0530 开始 GET "/sw.js" for ::1

\n\n

ActionController::RoutingError(没有路由匹配 [GET]“/sw.js”):

\n\n

actionpack (5.2.3) lib/action_dispatch/middleware/debug_exceptions.rb:65:in \'call\'
\n web-console (3.7.0) lib/web_console/middleware.rb:135:in \'call_app\'
\n Web 控制台 (3.7.0) lib/web_console/middleware.rb:30:in \'阻止调用\'
\n Web 控制台 (3.7.0) lib/web_console/middleware.rb:20:in \ 'catch\'
\n web-console (3.7.0) lib/web_console/middleware.rb:20:in \'call\' \
n actionpack (5.2.3) lib/action_dispatch/middleware/show_exceptions.rb:33:在\'call\'
\nrailties(5.2.3)lib/rails/rack/logger.rb:38:在\'call_app\'
\nrailties(5.2.3)lib/rails/rack/logger.rb: 26:在“呼叫中的块”\
n activesupport(5.2.3)lib / active_support / tagged_logging.rb:71:在“标记中的块”
\ n activesupport(5.2.3)lib / active_support / tagged_logging。 rb:28:在\'tagged\'
\n activesupport (5.2.3) lib/active_support/tagged_logging.rb:71:在\'tagged\'
\n Railties (5.2.3) lib/rails/rack/logger。 rb:26:in \'call\'
\n sprockets-rails (3.2.1) lib/sprockets/rails/quiet_assets.rb:13:in \'call\'
\n actionpack (5.2.3) lib/action_dispatch/ middleware/remote_ip.rb:81:in \'call\'
\n actionpack (5.2.3) lib/action_dispatch/middleware/request_id.rb:27:in \'call\'
\nrack (2.0.7) lib/ rack/method_override.rb:22:in \'call\'
\nrack (2.0.7) lib/rack/runtime.rb:22:in \'call\'
\n activesupport (5.2.3) lib/active_support/缓存/策略/local_cache_middleware.rb:29:in \'call\'
\n actionpack (5.2.3) lib/action_dispatch/middleware/executor.rb:14:in \'call\'\n actionpack (5.2.3) lib/action_dispatch/middleware/static.rb:127:in \'call\'
\nrack (2.0.7) lib/rack/sendfile.rb:111:in \'call\'
\nrailties (5.2.3) lib/rails/engine.rb:524:in \'call\' \
n puma (3.12.1) lib/puma/configuration.rb:227:in \'call\'
\n puma (3.12.1) lib/ puma/server.rb:660:in \'handle_request\' \
n puma (3.12.1) lib/puma/server.rb:474:in \'process_client\'
\n puma (3.12.1) lib/puma/ server.rb:334:in \'运行中的块\' \
n puma (3.12.1) lib/puma/thread_pool.rb:135:in \'spawn_thread 中的块\'
\n 已开始 GET "/search_stocks?utf8= %E2%9C%93&stock=GOOG&button=" for ::1 at 2019-07-08 22:39:48 +0530
\n StocksController#search 作为 JS 处理
\n 参数: {"utf8"=>"\xe2\ x9c\x93", "stock"=>"GOOG", "button"=>""}
\n 用户负载 (0.2ms) SELECT "users".* FROM "users" WHERE "users"."id" = ? 按“用户”.“id”ASC 限制排序?[[“ID”,



\n 在 15056 毫秒内完成 200 OK(查看次数:5.8 毫秒 | ActiveRecord:0.2 毫秒)

\n
\n\n

这究竟是从哪里来的?

\n\n

我昨天创建了一个新的 Rails 5.x 应用程序,我不确定从哪里引用该文件。

\n\n

我什至没有这个控制器的布局。

\n\n

耙子路线:

\n\n
api_boards                GET  /api/boards(.:format)                                                                    api/boards#index\napi_board                 GET  /api/boards/:id(.:format)                                                                api/boards#show\nrails_service_blob        GET  /rails/active_storage/blobs/:signed_id/*filename(.:format)                               active_storage/blobs#show\nrails_blob_representation GET  /rails/active_storage/representations/:signed_blob_id/:variation_key/*filename(.:format) active_storage/representations#show\nrails_disk_service        GET  /rails/active_storage/disk/:encoded_key/*filename(.:format)                              active_storage/disk#show\nupdate_rails_disk_service PUT  /rails/active_storage/disk/:encoded_token(.:format)                                      active_storage/disk#update\nrails_direct_uploads      POST /rails/active_storage/direct_uploads(.:format)                                           active_storage/direct_uploads#create\n
Run Code Online (Sandbox Code Playgroud)\n

gra*_*i33 6

Service Worker 注册在浏览器重新启动后仍然存在,不幸的是,旧的注册保留对公共 localhost:port 组合的控制,然后将其重新用于不同的项目,这是很常见的。

您可以通过运行以下命令来取消注册当前控制页面的 Service Worker

navigator.serviceWorker.getRegistration().then(r => r.unregister())
Run Code Online (Sandbox Code Playgroud)

在 Chrome 开发者工具的 JavaScript 控制台中。

您可以在Chrome 的 DevTools 的“应用程序”面板中查看所有 Service Worker 注册的列表,并在需要时单击“显示全部”按钮后手动取消注册。

参考