2017-01-10 7 views
0

Я создал простую страницу входа и настроил Spring Безопасность для ее использования. Но на самом деле я могу представить пустую форму. Я не хочу этого. Мне нужно показать сообщения проверки в текстовых полях. Пользователь не должен иметь возможности инициировать дорогостоящий механизм аутентификации, просто отправив пустую форму.Проверка формы с помощью страницы входа в систему Spring Security

Как я могу это сделать?

Я следовал за этим tutorial- https://docs.spring.io/spring-security/site/docs/3.2.0.RELEASE/guides/form.html

ответ

1

Вы можете добавить required attribute в логин и пароль полей. В этом случае браузер не позволит отправить форму с пустыми полями. Но это технология на стороне клиента, и поэтому пользователи по-прежнему могут отправлять такие пустые запросы вручную или из браузеров, которые не поддерживают этот атрибут (например, Safari).

Поскольку вы имеете дело с Spring Security, вы не можете использовать контроллеры и даже перехватчики из Spring MVC, потому что они выполняются после фильтра Spring Security.

Предлагаю вам написать собственный фильтр, поместить его перед фильтрами Spring Security и обработать случай с пустой формой вручную.

В качестве примера того, как записать фильтр и как зарегистрировать его в приложении Spring Boot, вы можете использовать эту фиксацию из моего проекта для домашних животных: 4020099d В вашем случае код будет проще.

+0

Я надеялся, что есть легкий «весенний» путь, слишком плохой. Я рассмотрю решение фильтра. Спасибо. – baymon

Смежные вопросы