在用户首次登录后,我正在使用 Sidekiq 工作人员完成对 Facebook 的一些请求。通常,该任务大约需要 20 秒左右。
同步完成后,我想使用 ajax 请求将一些信息加载到页面上,但不确定使用 Javascript 检查作业是否完成的最佳方法。
一种可能性是配置 Sidekiq 工作程序以在完成其余作业后设置 cookie。然后我可以使用 setTimeout 函数在调用加载函数之前继续检查 cookie。但我不确定这是否是最好的方法。我可以改用 Redis 吗?
在用户首次登录后,我正在使用 Sidekiq 工作人员完成对 Facebook 的一些请求。通常,该任务大约需要 20 秒左右。
同步完成后,我想使用 ajax 请求将一些信息加载到页面上,但不确定使用 Javascript 检查作业是否完成的最佳方法。
一种可能性是配置 Sidekiq 工作程序以在完成其余作业后设置 cookie。然后我可以使用 setTimeout 函数在调用加载函数之前继续检查 cookie。但我不确定这是否是最好的方法。我可以改用 Redis 吗?
保罗,我会把你的顾虑分开。我假设 sidekiq 工作人员使用一些 rails activerecord 模型向 facebook 发送一些信息。当 facebook 请求成功完成时,我会将该模型上的标志设置为 true。
然后,您可以在 js 中设置一个 setTimeout 来轮询数据库中的更改......或者您可以使用 Web 套接字来获得更快、更自动的响应。我过去使用过一个名为Pusher的库。它很容易与 rails 集成,并提供非常简洁的 UI。