处理 MaxUploadSizeExceededException : Ajax 文件上传
Handle MaxUploadSizeExceededException : Ajax File Uploading
如何在基于 ajax
的文件上传操作中有效地处理 MaxUploadSizeExceededException
。
我有一个基于 ajax 的文件上传功能。当用户上传的文件大小超过允许的最大值时,我需要处理 MaxUploadSizeExceededException
。我从 here 得到了解决方案,当文件大小超过时,用户将被定向到错误页面。由于我使用 ajax 请求上传文件,我想在文件大小超过时在浏览器中显示 javascript
警报,而不是重定向到某个错误页面。
我该怎么做?
我不知道 Ajax,因为你要求显示使用 javascript ,如果你使用的浏览器不支持,你可以使用 ActiveXObject不支持 HTML 5. 如果您使用的是现代浏览器,则可以使用如下所示的文件 API,
$('#fileId').bind('change', function() {
//The below code will get the size of the uploaded file.
alert(this.files[0].size);
});
您将获得以字节为单位的文件大小,您可以将文件大小除以 1024 以得到 kb。
一个可能的解决方案是完全遵循 linked answer 中的解决方案,在异常情况下,您将重定向到 error.jsp,这将事实上returnJSON,就这么简单
error.jsp
<%@ page contentType="application/json;charset=UTF-8" language="java" %>
{"errors":"${errors}"}
在这种情况下,您的 ajax 调用的 成功 部分将是
success : function(json) {
alert(json.errors);
}
如何在基于 ajax
的文件上传操作中有效地处理 MaxUploadSizeExceededException
。
我有一个基于 ajax 的文件上传功能。当用户上传的文件大小超过允许的最大值时,我需要处理 MaxUploadSizeExceededException
。我从 here 得到了解决方案,当文件大小超过时,用户将被定向到错误页面。由于我使用 ajax 请求上传文件,我想在文件大小超过时在浏览器中显示 javascript
警报,而不是重定向到某个错误页面。
我该怎么做?
我不知道 Ajax,因为你要求显示使用 javascript ,如果你使用的浏览器不支持,你可以使用 ActiveXObject不支持 HTML 5. 如果您使用的是现代浏览器,则可以使用如下所示的文件 API,
$('#fileId').bind('change', function() {
//The below code will get the size of the uploaded file.
alert(this.files[0].size);
});
您将获得以字节为单位的文件大小,您可以将文件大小除以 1024 以得到 kb。
一个可能的解决方案是完全遵循 linked answer 中的解决方案,在异常情况下,您将重定向到 error.jsp,这将事实上returnJSON,就这么简单
error.jsp
<%@ page contentType="application/json;charset=UTF-8" language="java" %>
{"errors":"${errors}"}
在这种情况下,您的 ajax 调用的 成功 部分将是
success : function(json) {
alert(json.errors);
}