gpt4 book ai didi

java - 未为 HttpServletResponse 设置 header

转载 作者:行者123 更新时间:2023-12-01 04:36:10 25 4
gpt4 key购买 nike

嘿,我正在尝试实现一个 servlet,如果出现异常,我会向响应添加一个 header :

    catch (Exception e) {
response.addHeader("ErrorCode", e.getErrorMessage());
response.sendError(HttpServletResponse.SC_BAD_REQUEST,
e.getErrorMessage());
}

在客户端,我将所有 header 存储在一个数组中:

    Header[] header=response.getAllHeaders();

if(header.length>0)
{
errorMessage = header[0].getValue();
//do this for all the six elements in the header[] array

}

但在响应中我看不到名称为 ErrorCode 的 header 。在调试时,我可以看到我的 servlet 抛出异常。但在客户端我看不到 header 名称/值。这背后的原因是什么?我应该使用 setHeader() 而不是 addHeader() 吗?在这种情况下重要吗?

最佳答案

尝试调用...

response.setError();
response.reset();

...在添加 header 之前。我似乎记得曾经为 Tomcat 编写自定义错误报告阀时必须这样做。

关于java - 未为 HttpServletResponse 设置 header ,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17308334/

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