Spring引导 - 如果请求中不存在,则设置默认的Content-type标头

时间:2018-01-11 21:26:33

标签: spring spring-mvc spring-boot

我遇到以下问题:假设我有时会收到没有设置Content-type标头的POST请求。在这种情况下,我想默认假设Content-type=application/json

我可以使用弹簧启动功能以及不使用过滤器以某种方式实现此目的吗?

由于

1 个答案:

答案 0 :(得分:-1)

从Spring Boot 2.x开始,您需要创建一个扩展WebMvcConfigurer接口的类,例如:

@Configuration
class WebMvcConfiguration implements WebMvcConfigurer {
    @Override
    public void configureContentNegotiation( ContentNegotiationConfigurer configurer )
    {
        configurer.defaultContentType( MediaType.APPLICATION_JSON );
    }
}

在1.x版本中,您可以使用现已弃用的WebMvcConfigurerAdapter进行相同的操作。

这将同时影响请求和响应主体,因此,如果您没有显式设置“ produces”参数,并且想要除application / json之外的其他内容,它将被强制为application / json。