如何在 Spring WebFlux 中使用内容协商格式参数?
How to use content negotation format parameter in Spring WebFlux?
spring.mvc.contentnegotiation.favor-parameter=true
spring.mvc.contentnegotiation.parameter-name=format
如何使用 spring webflux
中的内容协商功能?
所以 /request?format=json
在 Accept
header 旁边是可能的。
它的工作原理如下,但不知道那是正确的方法:
@Configuration(proxyBeanMethods = false)
public class ReactiveWebFluxConfigurer {
@Value("${spring.mvc.contentnegotiation.parameter-name}")
private String formatName;
@Bean
public WebFluxConfigurer webFluxConfigurer() {
return new WebFluxConfigurer() {
@Override
public void configureContentTypeResolver(RequestedContentTypeResolverBuilder builder) {
builder.parameterResolver().parameterName(formatName);
//if you want, add additional fallback to Accept header if format param is missing
builder.headerResolver();
}
};
}
}
spring.mvc.contentnegotiation.favor-parameter=true
spring.mvc.contentnegotiation.parameter-name=format
如何使用 spring webflux
中的内容协商功能?
所以 /request?format=json
在 Accept
header 旁边是可能的。
它的工作原理如下,但不知道那是正确的方法:
@Configuration(proxyBeanMethods = false)
public class ReactiveWebFluxConfigurer {
@Value("${spring.mvc.contentnegotiation.parameter-name}")
private String formatName;
@Bean
public WebFluxConfigurer webFluxConfigurer() {
return new WebFluxConfigurer() {
@Override
public void configureContentTypeResolver(RequestedContentTypeResolverBuilder builder) {
builder.parameterResolver().parameterName(formatName);
//if you want, add additional fallback to Accept header if format param is missing
builder.headerResolver();
}
};
}
}