上传文件时处理网络问题
Handling network issues while uploading files
这是到目前为止生成的html(使用GWT
作为前端),到目前为止我拥有的复制GWT FileUpload类的内容。
<input type="file" id="input" onchange="handleFiles(this.file)">
在HandleFileUploadServet.java
的帮助下工作正常,因为Java作为后端。
使用addSubmitCompleteHandler
来处理这个问题
form.addSubmitCompleteHandler(new SubmitCompleteHandler() {..
这相当于
.submit(function(){
//handle file response
})
工作正常。
问题是,上传文件时如果互联网断开连接,浏览器没有抛出error/exception/response
。
我想通知用户,存在网络问题。
但是浏览器继续提交表单,而不是从该状态返回。
有什么提示吗?
谢谢你的时间。
如果事件为 null,请检查您的处理程序吗?
form.addSubmitCompleteHandler(new FormPanel.SubmitCompleteHandler() {
public void onSubmitComplete(SubmitCompleteEvent event) {
if(event != null){
Window.alert("Upload OK!");
}else
Window.alert("Upload fail");
});
但我认为,如果您有网络问题,SubmitCompleteEvent 永远不会被触发。
解决方案可以是在提交文件时制作计时器:
public class ViewWidget {
Form form;
Timer timer = new Timer() {
@Override
public void run() {
Window.alert("Troubles with upload! Try again!");
}
};
public ViewWidget(){
form.addSubmitHandler(new SubmitHandler() {
@Override
public void onSubmit(SubmitEvent event) {
timer.schedule(10000);
}
});
form.addSubmitCompleteHandler(new SubmitCompleteHandler() {
@Override
public void onSubmitComplete(SubmitCompleteEvent event) {
//Cancel the timer
timer.cancel();
if(event != null){
//Do your Stuff
Window.alert("Upload Ok !");
}else
Window.alert("Upload Fails");
}
});
}
我不尝试代码,但它应该可以工作。
希望对您有所帮助。
相关文章:
- 在指令控制器中使用$attrs时出现问题
- 将PHP变量传递给jQuery时遇到问题
- Canvas Html5绘图应用程序,移动画布会导致重大问题
- 参数变量出现ngTable指令问题
- 随机网络::ERR_CONNECTION_RESET问题
- Python3网络抓取问题(关于JS)
- Infrastics网络货币编辑舍入问题
- 条纹付款问题 - 网络错误,您尚未被扣款
- 上传文件时处理网络问题
- 将Android网络视图渲染为位图,html5 javascript,回调问题
- 使用IONIC的IOS没有网络连接功能问题
- 通过selenium网络驱动程序点击下拉子菜单时出现问题
- 网络音频API质量差和Safari中的其他问题
- jQuery数据表网络问题
- React网络摄像头-截图问题
- 网络工作者会被浏览器悄无声息地杀死吗?(pdf.js问题)
- 网络音频API故障/失真问题
- 使用节点网络爬虫循环访问 DOM 元素时遇到问题
- 如何知道客户端何时在Socket中断开连接.由于网络问题导致IO
- 长轮询xmlhttprequest和间歇性网络连接的问题