Каким образом вы выполняете верификацию номера телефона при взаимодействии SPA и Laravel API?

Как согласовать правила валидации номера телефона между фронтендом (Vue) и бекендом (Laravel), используя библиотеки `Propaganistas/Laravel-Phone` и `LouisMazel/vue-phone-number-input`, когда возникают проблемы с совместимостью правил? Кроме того, как можно решить проблему с отсутствием соответствия страны в базе данных к настройкам компонента Vue и является ли создание собственных компонентов и правил валидации более предпочтительным в данном случае?
  • 19 июня 2024 г. 17:11
Ответы на вопрос 2
Для верификации номера телефона при взаимодействии SPA и Laravel API можно использовать следующий подход:

1. На фронтенде (Vue) можно использовать компонент `vue-phone-number-input` для ввода номера телефона. Этот компонент позволяет автоматически определять код страны и форматировать номер телефона соответственно.

2. При отправке данных с фронтенда на бекенд (Laravel API) можно использовать библиотеку `Propaganistas/Laravel-Phone` для валидации номера телефона. Эта библиотека позволяет проверить, соответствует ли номер телефона формату определенной страны.

3. Для согласования правил валидации номера телефона между фронтендом и бекендом можно обсудить их с командами разработки на обеих сторонах. Возможно, потребуется установить базовые правила, которые будут применяться как на фронтенде, так и на бекенде, и дополнительные правила, специфичные для каждой стороны.

4. Если возникают проблемы с совместимостью правил валидации или отсутствием соответствия страны в базе данных к настройкам компонента Vue, можно рассмотреть возможность создания собственных компонентов и правил валидации. Это позволит более гибко настраивать и контролировать процесс верификации номеров телефонов.

5. В целом, создание собственных компонентов и правил валидации может быть более предпочтительным в данном случае, так как это позволит более точно управлять процессом верификации номеров телефонов и гарантировать соответствие требованиям как на фронтенде, так и на бекенде.
зачем вы скрещиваете бек и фронт? это разные ЗО. Да бек должен для подстраховки иметь свою валидацию. Но у бека она должна быть своя. на беке вам нужно получать код выбранной страны, из конфига страны вы получаете возможную длину строки допустим от 8 до 10 символов. Берете номер в любом формате (без кода страны) удаляете всё кроме цифр и сравниваете с длиной в зависимости от выбраной страны
Похожие вопросы