|
|
|
Angular и валидация на сервере
|
|||
|---|---|---|---|
|
#18+
Созрел у меня вопрос, ответа на который у меня нет. Вот есть у нас SPA всё отлично, дергаем сервисы всё по честному как и должно. Но вот валидацию дублировать на двух сторонах как то не очень радует. Ладно у нас были специально обученные люди для написания этого SPA, а вот сам сел писать и понял что это как то глупо два раза писать один и тот же код на проверку значений. Расскажите как вы справляетесь с этим, кто какие практики использует? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 03.10.2015, 15:07 |
|
||
|
Angular и валидация на сервере
|
|||
|---|---|---|---|
|
#18+
GregTk, валидация валидации рознь. Фреймворк валидность на обязательное поле должен делать одним кликом. В БД модель защищают условием на поле. Ну или в хибере оно по другому называется. Делают это разные люди. Так что ничего страшного, хотя я в прошлой теме жаловался что тоже копирую код как ты). ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 03.10.2015, 18:56 |
|
||
|
Angular и валидация на сервере
|
|||
|---|---|---|---|
|
#18+
GregTkа вот сам сел писать не пиши всё сам))) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 03.10.2015, 18:57 |
|
||
|
Angular и валидация на сервере
|
|||
|---|---|---|---|
|
#18+
Petro123, Ничего не понял, про то как на сервере всё валидировать я прекрасно знаю, вопрос в том как эти правила перенести автоматом в Angular. Разные люди это конечно круто, но проблема уходит тогда ещё и в организационный момент. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 04.10.2015, 05:29 |
|
||
|
Angular и валидация на сервере
|
|||
|---|---|---|---|
|
#18+
GregTkно проблема уходит тогда ещё и в организационный момент. не уходит. На ГУИ эти проверки дополнительные. Основные на сервере. Организационный момент в том, что для клиента отдельное ТЗ, люди и требования. Пишется по готовому дизайн-макету(напр. Ворд). Где например, звёздочкой указано обязательное поле дата. Ангуляр позволяет _декларативно_ и просто его обозначить? Не нужно автоматом переносить. Клиент по другому пишется. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 04.10.2015, 11:27 |
|
||
|
Angular и валидация на сервере
|
|||
|---|---|---|---|
|
#18+
счас обязательность поля вообще в теги HTML5 ушла. И т.д. На сервере своя кухня, на клиенте своя. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 04.10.2015, 11:29 |
|
||
|
Angular и валидация на сервере
|
|||
|---|---|---|---|
|
#18+
Petro123, Я тебя не понимаю, что ты хочешь сказать, что это не выход валидацию проталкивать с сервера на клиента? Я хочу избежать двойной работы и проблем с синхронизацией. Я прекрасно понимаю что иногда на клиенте можно делать доп. валидацию, которой нет на сервере, но всё же та что на сервере есть должна быть доступна и на клиенте тоже, вопрос именно об этом. Кто и как решает эту проблему в контексте Angular + REST Java сервер. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 04.10.2015, 15:16 |
|
||
|
Angular и валидация на сервере
|
|||
|---|---|---|---|
|
#18+
GregTkта что на сервере есть должна быть доступна и на клиенте тоже -1 кто вам такое сказал. А вообще, вы бы конкретнее, что у вас за одинаковая валидация на JS и на Java. Если только обязательное поле, то не парьте мозг. Удачи! ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 04.10.2015, 20:24 |
|
||
|
Angular и валидация на сервере
|
|||
|---|---|---|---|
|
#18+
Petro123GregTkта что на сервере есть должна быть доступна и на клиенте тоже -1 кто вам такое сказал. А вообще, вы бы конкретнее, что у вас за одинаковая валидация на JS и на Java. Если только обязательное поле, то не парьте мозг. Удачи! А кто сказал что нет? Кроме обязательности есть и другие проверки например по regexp. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 04.10.2015, 20:48 |
|
||
|
Angular и валидация на сервере
|
|||
|---|---|---|---|
|
#18+
Желание понятно. Но для того, чтобы переиспользовать валидацию нужно либо переиспользовать валидаторы на JavaScript на стороне сервера через ScriptEngine, либо писать клиента и сервер на одном языке: GWT, Vaadin, Clojure + ClojureScript, scala + scala.js, kotlin. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 04.10.2015, 21:31 |
|
||
|
Angular и валидация на сервере
|
|||
|---|---|---|---|
|
#18+
GregTkregexp ты так и не привел реальный пример. Java программисты страдают поиском совершенства. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 04.10.2015, 23:37 |
|
||
|
Angular и валидация на сервере
|
|||
|---|---|---|---|
|
#18+
Такое все же иногда на самом деле надо, хотя это и очень редко, не уверен что у ТС такой случай. Но допустим, что так. Основная идея(сейчас не привязываемся к ангулару, просто сервер на java и клиент на js) состоит в том чтобы был какой-то набор predefined validators что на сервере что на клиенте. Допустим maxValidator, minValidator, regExpValidator и тд. Все они знают что должны делать(регекспвалидатор чекает регексп), но конкретное значение приходит вместе с моделью данных с сервера и описывается там же. Например юзер зашел на страничку пользователя, идет запрос на сервак /user На серваке подымается объект, допустим класса User, у которого на полях прописаны констрейнты в виде аннотаций(@Regexp("aaa")), это все счастье преобразуется в некий json, например form: "user", fields: [id:"email", validators:[min:3, regExp:"aaa"]]. На основе этого json генерится конечный html и на поле биндится валидатор regExp со значением aaa. Таким образом поменяв регексп только на сервере он подхватится и на клиенте. Подход этот довольно таки абстрактный и сложный, в 99% нет ничего страшного чтобы сделать двойную валидацию. В моем случае UI все равно сам по себе генерится, и админ может поменять регекспу в админке и одним из требований было чтобы клиента не надо было модифицировать. Но, подчеркиваю, предефайнед валидаторы должны быть и на сервере и на клиенте СРАЗУ, добавить новое ограничение на лету не получится, только заранее известное. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 05.10.2015, 00:06 |
|
||
|
Angular и валидация на сервере
|
|||
|---|---|---|---|
|
#18+
я бы сделал так - одна валидация и только на сервере, который отправляет JSON со списком полей и текстом ошибок ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 05.10.2015, 01:47 |
|
||
|
Angular и валидация на сервере
|
|||
|---|---|---|---|
|
#18+
забыл ник, Вот именно об этом я и говорю, важна скорость UI, в том же GWT, который упомянул fixxer это делается просто по известным причинам. А когда у нас JS + REST ничего готового нет, вот я и интересуюсь какие практики люди используют. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 05.10.2015, 04:52 |
|
||
|
Angular и валидация на сервере
|
|||
|---|---|---|---|
|
#18+
Странные java программисты. А я вот хочу чтобы констрейнт субд прописывался java автоматом. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 05.10.2015, 08:06 |
|
||
|
|

start [/forum/topic.php?fid=59&msg=39068029&tid=2124857]: |
0ms |
get settings: |
5ms |
get forum list: |
10ms |
check forum access: |
2ms |
check topic access: |
2ms |
track hit: |
154ms |
get topic data: |
7ms |
get forum data: |
2ms |
get page messages: |
38ms |
get tp. blocked users: |
1ms |
| others: | 201ms |
| total: | 422ms |

| 0 / 0 |
