Диспетчер запросов больше не работает для фильтра rel oop - PullRequest
0 голосов
/ 04 февраля 2020

Я создаю фронт и бэкэнд, которые общаются с зашифрованным URI. Пример front send localhost: 9090 / DE86DZA3DZ9FEFES65.

Я работал с фильтром токена авторизации сзади, чтобы убедиться, что аутентификация хороша с заголовками и частью с расшифровкой uri, чтобы сделать request.getDispatcher (uriDecoded) .forward ( hsrww, response) где hsrww является HttpServletRequestWritableWrapper. Это делается для того, чтобы «переделать» декодированный хороший запрос и передать его в фильтре по-новому, и его можно понять в репозиториях Spring, например, с /api/peoples.

Работал с Spring Boot 1.X, но обновление до Spring 2 больше не работает. Можете ли вы помочь мне найти новый способ или дать мне советы по его устранению?

Вот код:

AuthTokenFilter 

String uriWithoutSlash = httpRequest.getRequestURI().replaceAll(REGEX_SLASH, REPLACE_EMPTY);
                String uriWithParams = CryptoService.decryptUri(DatatypeConverter.parseHexBinary(uriWithoutSlash));
                resp.addHeader(CRYPTAGE, "false");
                String[] parts = uriWithParams.split(REGEX_QUESTION_MARK);
                if (parts.length > 1 && !parts[1].equalsIgnoreCase("null")
                        && uriWithParams.startsWith(env.getProperty("spring.data.rest.basePath"))) {
                    HttpServletRequestWritableWrapper hsrww = new HttpServletRequestWritableWrapper(httpRequest);
                    fillParameters(parts[1], hsrww);
                    hsrww.setRequestURI(parts[0]);
                    httpRequest.getRequestDispatcher(parts[0]).forward(hsrww, response);
                } else {
                    httpRequest.getRequestDispatcher(uriWithParams).forward(httpRequest, response);
                }

Спасибо,

...