我正在使用REST服务生成一个CSV文件,并希望提示用户进行下载。以下是该服务的示例:
https://localhost:8444/websvc/exportCSV?viewId=93282392
为了提示用户下载文件,我使用以下代码:
window.location.href = exportUrl
,其中exportUrl
是类似上面的URL。
如果执行服务时没有任何错误,这个方法非常有效。文件下载提示会出现,页面不会刷新,一切都很好。
但是,如果有错误,则会出现令人难以接受的HTTP状态500页面,这对用户体验来说并不好。我想做的是捕获结果页面上的任何错误,并弹出更友好的错误提示而不离开当前页面。我尝试过:
try {
window.location.href = exportUrl;
}
catch (e) {
alert(e);
}
但这似乎并没有改变行为。有人对如何处理此事有什么想法吗?
非常感谢。
base64encode
构建数据URL?谢谢。 - Mattbase64encode
数据URL。 - Matt