Async rails动作与响应

时间:2015-08-28 01:11:43

标签: ruby-on-rails ruby asynchronous

基本上,我需要的是:

当用户按下“Parse”按钮时,它向服务器发送请求(使用ajax)并使用循环执行控制器操作。它必须是异步的,用户必须得到响应完成的百分比(如加载器......)

实施此方法的最佳方法是什么?

1 个答案:

答案 0 :(得分:2)

您所描述的最困难的任务是更新加载程序以显示正确的百分比。如果你能没有,我建议你这样做。如果你真的想要一个加载器,因为解析需要花费很多时间,我可以看到3个选项:

  • 使用websockets在更新后将百分比发送给用户。 Rails将在Rails 5中包含Actioncable,以便轻松完成此操作,但您现在可以试用它:https://github.com/rails/actioncable
  • 使用第三方服务(例如https://pusher.com/)轻松实现此功能,而无需管理自己的websocket服务器
  • 或者在Redis中保存百分比并创建一个每秒钟左右ping一次的端点来更新加载器。感觉有点黑,但有时候还不够。
祝你好运!