我目前正在开发一个web应用程序,它有django后端(使用DRF)和React作为前端。
我想创建一个API,可以导出多个PDF文件(每个4-5页)。当然,这将花费很长时间,并且在正常的HTTP请求/响应周期中执行此操作将超时。
将其整合到后端的最佳方式/架构是什么?
PS:我已经有了用于其他几个apis(耗时的后台任务)的celery,但在这种情况下,我希望来自celery的响应(即pdf文件)到达前端。我不知道该怎么做。
对于这种情况理想的任何其他方法都是可取的。提前感谢!!
发布于 2020-10-12 13:04:30
如果你想在前面向用户展示PDF,而不是稍后通过电子邮件发送,我认为最好的解决方案是告诉用户,当PDF准备好时,你会通知他们,并在后台生成PDF,然后用推送通知通知用户的React前台(或者像SignalR这样的websock ),并执行一个应用程序接口,使用户能够下载PDF或只做电子邮件的事情
理由:你不能长时间保持请求(我的意思是你可以,但这并不合适,没有人想看白屏等很长时间,对吧?)所以它必须在后台完成
https://stackoverflow.com/questions/64311905
复制相似问题