Я хочу использовать lang для обозначения языков. В процессе аутентификации этот параметр теряется - PullRequest
0 голосов
/ 17 мая 2018

http://localhost:8080/auth/login?lang=en Я хочу использовать lang для маркировки языков. В процессе аутентификации этот параметр теряется. Я прочитал исходный код. LoginUrlAuthenticationEntryPoint.commence `` `Ява public void начало (запрос HttpServletRequest, ответ HttpServletResponse, AuthenticationException (authException) выдает IOException, ServletException {

    String redirectUrl = null;

    if (useForward) {

        if (forceHttps && "http".equals(request.getScheme())) {
            // First redirect the current request to HTTPS.
            // When that request is received, the forward to the login page will be
            // used.
            redirectUrl = buildHttpsRedirectUrlForRequest(request);
        }

        if (redirectUrl == null) {
            String loginForm = determineUrlToUseForThisRequest(request, response,
                    authException);

            if (logger.isDebugEnabled()) {
                logger.debug("Server side forward to: " + loginForm);
            }

            RequestDispatcher dispatcher = request.getRequestDispatcher(loginForm);

            dispatcher.forward(request, response);

            return;
        }
    }
    else {
        // redirect to login page. Use https if forceHttps true

        redirectUrl = buildRedirectUrlToLoginPage(request, response, authException);

    }

    redirectStrategy.sendRedirect(request, response, redirectUrl);
}

`` `

Переписать redirectUrl AbstractAuthenticationFilterConfigurer

java private void addAuthenticationEntryPoint(HttpSecurity http, OAuth2SsoProperties sso) throws Exception { ... exceptions.defaultAuthenticationEntryPointFor( new LoginUrlAuthenticationEntryPoint(sso.getLoginPath()), preferredMatcher); ... }

Это нужно переписать слишком много кода. Интересно, не нашел ли я подходящую существующую конфигурацию для решения этой проблемы.

1 Ответ

0 голосов
/ 24 мая 2018

решено фильтром сохранить сообщение в сеансе

...