Spring WebFlux - SessionLocaleResolver - PullRequest
       7

Spring WebFlux - SessionLocaleResolver

0 голосов
/ 25 ноября 2018

Я пытался реализовать изменение языка в WebFlux следующим образом:

  • сайт устанавливает язык по умолчанию
  • , когда пользователь регистрируется в своем предпочтении языка, загруженном в сеанс
  • локаль также должна быть изменяемой параметром запроса

Для этой цели я бы скопировал AcceptHeaderLocaleContextResolver '* resolveLocaleContext(), но проблема: ServerWebExchange' * getRequest() возвращает ServerHttpRequest, но getSession() возвращает Mono<WebSession>.Должен ли я сделать block() здесь?Или есть какой-то другой способ добиться того, чего я хочу?

Кроме того, есть LanguageChangeInterceptor -подобная вещь, или я тоже должен это реализовать?

Редактировать: метод resolveLocaleContext()Я хотел бы изменить здесь , вместо exchange.getRequest().getHeaders() Я бы написал что-то вроде exchange.getSession()..., но он возвращает реактивный тип.

...