如何使用java模拟中断的应用程序/八位字节流
我有一个JavaWeb应用程序,它将生成一个带有下载文件链接的http页面。 单击链接时,它将转到一个API,API将发送一个如何使用java模拟中断的应用程序/八位字节流,java,html,download,Java,Html,Download,我有一个JavaWeb应用程序,它将生成一个带有下载文件链接的http页面。 单击链接时,它将转到一个API,API将发送一个HttpResponse响应,响应内容类型为 resp.setContentType("application/octet-stream"); resp.setHeader("Content-Disposition", "attachment; filename=\"" + fileName + "\""); 然后浏览器将文件保存到操作系统的下载目录 现在,如果文件丢失
HttpResponse响应
,响应内容类型为
resp.setContentType("application/octet-stream");
resp.setHeader("Content-Disposition", "attachment; filename=\"" + fileName + "\"");
然后浏览器将文件保存到操作系统的下载目录
现在,如果文件丢失或损坏,我们如何以编程方式向浏览器下载失败?是否有某种类型的标题,我应该使用
请注意,在流开始之前,我有机会知道文件是否丢失,但我必须在html超链接的基础上工作。如果文件丢失,则应使用HTTP状态404(未找到)将其告知客户端
如果文件丢失,则应使用HTTP状态404(未找到)将其传送给客户端
您有许多选项可以显示错误,例如:
我认为您使用的是
HttpServletResponse
,而不是HttpResponse
(我可能错了)。如果是这样,您可以使用sendRedirect()
方法重定向用户。您有许多选项可以显示错误,例如:
我认为您使用的是
HttpServletResponse
,而不是HttpResponse
(我可能错了)。如果是这样,您可以使用sendRedirect()
方法重定向用户。您是否可以发布代码以便人们能够帮助您。您是否可以发布代码以便人们能够帮助您。谢谢,同样值得一提的是使用resp.sendError(HttpServletResponse.SC_NOT_FOUND,“一些错误消息”)代码>谢谢,同样值得一提的是使用resp.senderro(HttpServletResponse.SC_NOT_FOUND,“Some error message”)代码>
resp.setStatus(HttpServletResponse.SC_NOT_FOUND);