Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/ruby/24.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Ruby on rails 从控制器中的url返回javascript文件_Ruby On Rails_Ruby_Service Worker - Fatal编程技术网

Ruby on rails 从控制器中的url返回javascript文件

Ruby on rails 从控制器中的url返回javascript文件,ruby-on-rails,ruby,service-worker,Ruby On Rails,Ruby,Service Worker,我得到了一个由“app/public/packs/”生成的sw.js文件。 我必须用app/public/packs/sw.js响应GET to/sw.js。 没有重定向到,我必须从那里提供服务,让服务人员控制根范围 如何编写控制器以使用localhost/packs/sw.js中的内容响应localhost/sw.js?您可以使用控制器操作中的send_文件: 我不是100%确定mime类型,它是text/javascript或application/javascript这是一个很好的答案,但

我得到了一个由“app/public/packs/”生成的sw.js文件。 我必须用app/public/packs/sw.js响应GET to/sw.js。 没有重定向到,我必须从那里提供服务,让服务人员控制根范围

如何编写控制器以使用localhost/packs/sw.js中的内容响应localhost/sw.js?

您可以使用控制器操作中的send_文件:


我不是100%确定mime类型,它是text/javascript或application/javascript

这是一个很好的答案,但现在我意识到我的问题不是控制器而是路由。在my routes.rb中,我添加了get'/sw'=>'swshow',但是:get localhost/sw.js没有提供与[get]/sw.js]匹配的路由,但是get localhost/sw返回正确的文件。我该换什么?@lellefood你可以加上类似方块的东西
def your_action 
  send_file("#{Rails.root}/app/public/packs/sw.js",
            :filename => "sw.js",
            :type => "application/javascript")
end