当前位置: 首页 > 知识库问答 >
问题:

我想根据Spring MVC中的Http状态代码为Http响应添加一个标头

邓欣德
2023-03-14

有没有其他方法可以在Controller后面添加header?

共有1个答案

钱繁
2023-03-14

您可以扩展org.springframework.web.filter.onceperRequestFilter添加cache-control标头。

public class CacheControlHeaderFilter extends OncePerRequestFilter {
    @Override
    protected void doFilterInternal(HttpServletRequest request,
                               HttpServletResponse response, FilterChain filterChain) {
        // Add the header here based on the response code
    }
}

在您的配置中将这个过滤器声明为spring bean。

<bean id="cacheControlHeaderFilter" class="*.*.CacheControlHeaderFilter" />

在web.xml中插入过滤器:

<filter>
    <filter-name>cacheControlHeaderFilter</filter-name>
    <filter-class>org.springframework.web.filter.DelegatingFilterProxy</filter-class>
</filter>

<filter-mapping>
    <filter-name>cacheControlHeaderFilter</filter-name>
    <url-pattern>/*</url-pattern>
</filter-mapping>
 类似资料:
  • 如何从的结果中获取HTTP状态?

  • 让我们假设有一个HTTP POST,它接受JSON和一些数据作为输入,并且它必须验证这些数据。该方法还应在响应正文中返回验证消息。 前任。 假设在JSON上定义了一些验证规则,例如(ab)应该小于C参数。 我对HTTP状态代码有一些疑问。 如果JSON是有效的HTTP POST应该返回200 如果JSON无效(缺少参数或错误类型),HTTP POST应该返回400 但是如果JSON是有效的(有所有

  • 我希望返回http状态代码和响应对象。如果我只是在失败场景中返回response object,则状态返回为200。但是我希望将服务返回的状态(例如:403)与响应对象一起发送。但是下面的代码只是返回消息和状态。在这种情况下,我想要响应对象orderdetails对象,它有失败原因和其他字段。如何将对象传递回客户端有什么帮助吗?

  • 我使用curl获取http头以查找http状态代码并返回响应。我使用以下命令获取http头

  • 我想知道在REST API中应该如何响应。 有效示例: 以上是一个有效的请求,当前我的HTTP状态为200,有一个JSON响应

  • 好的,我在运行我的应用程序时遇到了这个问题,我相信这是因为版本控制。 秋季开始,我使用Tomcat 9.0.4。我使用最新的JavaSDK。 现在,我使用的是Spring版本5.0.2。 这是我的pom。xml: 这是我的web.xml: 这是我的调度器servlet。xml: 现在,我想提一件事:看看那些?我不确定这是否正确。为什么?这就是我在输出中得到的错误: 现在,我知道这是一大段文字,你可