HTTP -Header Akzeptieren nicht ändern - Verwenden Sie eine andere Strategie zur Auflösung von Gebietsschema für mehrteil
Posted: 20 Mar 2025, 22:32
In einer Spring-Boot 1.5.9-Anwendung habe ich den folgenden Localeresolver :
Aus irgendeinem Grund habe ich einen Nebeneffekt, wenn ich ein Multipart -Formulardaten poste, die einen Schlüssel namens Lang enthalten, habe ich den folgenden Fehler:
Warum und wie kann ich das beheben, um Formular in meinen Formularen -Daten zu verwenden?
Code: Select all
@Bean
public LocaleResolver localeResolver() {
AcceptHeaderLocaleResolver acceptHeaderLocaleResolver = new AcceptHeaderLocaleResolver() {
@Override
public Locale resolveLocale(HttpServletRequest request) {
String locale = request.getParameter("lang");
return locale != null
? org.springframework.util.StringUtils.parseLocaleString(locale)
: super.resolveLocale(request);
}
};
acceptHeaderLocaleResolver.setDefaultLocale(webMvcProperties.getLocale());
return acceptHeaderLocaleResolver;
}
@Bean
public LocaleChangeInterceptor localeChangeInterceptor() {
LocaleChangeInterceptor lci = new LocaleChangeInterceptor();
lci.setParamName("lang");
return lci;
}
@Override
public void addInterceptors(InterceptorRegistry registry) {
registry.addInterceptor(localeChangeInterceptor());
}
Code: Select all
Cannot change HTTP accept header - use a different locale resolution strategy