moa*_*lon 5 html javascript http image-generation http-headers
我有一个小的http服务器,可以即时生成一些图像,生成过程可能需要一些时间.生成后,图像将被无限缓存.
目前,如果用户请求未缓存的图像,则服务器返回202 Accepted带有Refresh标题的图像.如果图像被缓存,301 Permanently Moved则发送a并且用户被重定向到唯一URL(不同的图像可以共享相同的唯一URL).
如果图像在<img>标签中引用(至少在Firefox上),整个系统就会中断.没有Javascript可以解决这个问题吗?如果没有,脚本会是什么样子?
我不确定你是否可以在没有 Javascript 的情况下做到这一点,但你可能可以使用 ajax 做到这一点?我的意思是,指向服务器,然后检查它是否在那里......然后如果它显示它,否则 30 秒后重试,它可能是这样的:
function getImage(img) {
$.ajax({
cache: true,
url: <<ADDRESS>>,
data: "",
timeout: 60,
error: function (jqXHR, error, errorThrown) {
setTimeout(function() {
getImage(img);
}, 30000);
},
success: function (data) {
//set the image
}
});
}
Run Code Online (Sandbox Code Playgroud)
好吧,你希望图像会在某个时候消失。
唯一的其他选择是在请求之前生成图像?例如,如果它只是为照片库创建缩略图,为什么要等到被请求才生成它呢?一旦获得就生成它吗?
希望有帮助/有意义。
| 归档时间: |
|
| 查看次数: |
296 次 |
| 最近记录: |