首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >停止Blob URL过期

停止Blob URL过期
EN

Stack Overflow用户
提问于 2011-06-01 22:46:54
回答 3查看 1.7K关注 0票数 2

我正在将图片上传到blob商店。我已经从here复制了这个示例。

我遇到的唯一问题是:如果我用表单加载页面,而不是立即提交图像。URL可能会过期,当我尝试加载图像时,会得到一个错误页面。如何检查URL是否已过期并在用户不知道的情况下刷新URL?

EN

回答 3

Stack Overflow用户

回答已采纳

发布于 2011-06-01 23:59:13

似乎解决办法是在用户提交表单时获取Blob URL。这样,您就知道URL不会过期。

使用JQuery:

代码语言:javascript
运行
复制
$.get("/blobUrl", function(data){
    $("#changeProfilePictureForm").attr('action', data);
    $("#changeProfilePictureForm").submit();
    $("#changeProfilePictureForm").hide();
    $("#loadingImg").show();
}); 
票数 4
EN

Stack Overflow用户

发布于 2011-06-01 22:55:18

距离URL过期还有多长时间?您如何知道是过期导致了您的问题?我没有看到Google API文档提到这一点。还有,抛出了什么异常。您是否可以捕获它的服务器端,并将用户返回到同一页,与新生成的上传URL。我知道这不符合您的要求,即用户不知道发生了这种情况。

我猜一种选择是找出距离URL过期还有多长时间,然后使用JavaScript在超时附近异步调用您的服务器,检索新的上传URL并更改DOM中的URL。

然而,捕获异常并重新渲染的解决方案听起来最好,因为我认为URL应该只有在用户空闲了相当长的时间后才会过期?

票数 0
EN

Stack Overflow用户

发布于 2011-06-01 22:59:21

我不是100%确定这一点,但我见过网站刷新页面的部分,但实际上并没有刷新页面。Twitter是最典型的例子之一,它将最新的内容加载到页面的顶部,而不刷新页面。

According to this website你可以在不刷新页面的情况下通过xml和php获取动态内容。因此,如果用于上传图像的表单有时间限制,您可以尝试使用类似这样的函数来刷新表单,而无需实际刷新页面。

现在,如果url有一个有限的时间,或者整个页面都有一个cookie,你需要想出一种方法来续订或扩展cookie,API可能允许也可能不允许,这是基于google的设置。

我猜如果最坏的情况发生,你可以通过html函数在页面上尝试自动刷新,但是如果用户正在上传图像,而页面正在刷新,他们可能会失去所有的进度。

很抱歉,如果这不是最有帮助的事情,但我想我会尝试提供一些输入,也许是如何让球滚动。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/6203089

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档