У нас есть стандартное веб-приложение, а front-end использует Angular, back-end написан на Java 7. Что я заметил, так это то, что мы получаем много дублирующего кода. То есть проверка выполняется на стороне клиента угловыми, но я не могу полностью доверять ему, так как пользователь может отключить проверку на стороне клиента и просто отправить почтовый запрос на сервер.Избегайте дублирования кода проверки на интерфейсе Javascript и Java-бэкэнд?
Поэтому я должен повторить ту же логику проверки на стороне сервера в Java. Это довольно утомительно, но я не знаю, как этого избежать. Возможно, я могу написать некоторые части фреймворков с помощью фреймворка javascript (предположим, что это Node.js), который может использовать ту же самую библиотеку проверки, что и front-end, и заставить Java back-end взаимодействовать с node.js? Каков наилучший подход для решения этой проблемы?
Это означает, что у вас есть 2 backend? Когда-либо думал о таких вещах, как микросервисы? – CreasolDev
Не уверен в этом. Может быть, Java может как-то использовать библиотеки javascript для выполнения проверки? Может быть, вы можете просто сгенерировать код для проверки JavaScript на основе кода проверки на завершающем этапе или наоборот? –
Java не имеет ничего общего с Javascript. Выполняйте минимальные проверки на интерфейсе (базовая проверка типа/длины), а также проверите проверки базы данных и проверите дополнительные глубинные проверки в бэкэнд. – Andrius