gpt4 book ai didi

java - 发送错误时如何关闭HttpServletResponse OutputStream

转载 作者:行者123 更新时间:2023-12-03 08:56:52 26 4
gpt4 key购买 nike

HttpServlet.doGet(...)中,我使用以下命令从OutputStream中获取HttpServletResponse:

resp.getOutputStream();

写入该输出流时,发生异常,我想发回错误而不是数据
resp.sendError(HttpServletResponse.SC_SERVICE_UNAVAILABLE, "My error message");

那我该如何处理输出流呢?

我可能必须关闭它。是否已将已写入的数据发送到客户端?我可以以某种方式丢弃该数据,以便客户端仅得到错误吗?

最佳答案

输出流将被发送到客户端,其内容类型为text/html。

根据Java文档。

使用指定的状态向客户端发送错误响应,并清除缓冲区。服务器默认创建响应,使其看起来像一个包含指定消息的HTML格式的服务器错误页面,并将内容类型设置为“text/html”。

如果响应已经提交,则此方法引发IllegalStateException。使用此方法后,应将响应视为已提交且不应写入。

您还可以在web.xml中为预定义的response.sendError()代码设置错误页面。

编辑:我添加了图片。

关于java - 发送错误时如何关闭HttpServletResponse OutputStream,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/22226704/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com