【发布时间】:2012-06-03 13:52:10
【问题描述】:
我有一个小型 http 服务器,可以即时生成一些图像,生成过程可能需要一些时间。生成后,图像被无限缓存。
目前,如果用户请求未缓存的图像,服务器会返回带有Refresh 标头的202 Accepted。如果图像被缓存,则发送301 Permanently Moved 并将用户重定向到唯一的 url(不同的图像可能共享相同的唯一 url)。
如果图像在<img> 标签中被引用(至少在 Firefox 上),整个系统就会中断。这可以在没有 Javascript 的情况下解决吗?如果没有,脚本会是什么样子?
【问题讨论】:
-
您不能在处理时阻止请求,并在准备好时直接用实际图像回答吗?您的图像生成需要多长时间?
-
这取决于。有些图像可能需要几分钟才能生成,而另一些则只需几秒钟。阻止不是一种选择。
-
您是否尝试过使用 http 200 OK 和 Refresh 标头。 (202 更有意义,但以防万一……)
-
刚试过。不工作:(
-
为什么不能选择完全阻止?在真正释放刷新响应之前,您是否可以至少阻塞 10 秒以减少对服务器的重复请求量?
标签: javascript html http http-headers image-generation