Где поставить проверки строк в Laravel? Контроллер, модель или еще где-то? - PullRequest
0 голосов
/ 20 мая 2019

Мне нужно проверить строку из формы ввода, чтобы убедиться, что это правильный URL.Я, вероятно, собираюсь использовать встроенную функцию PHP следующим образом:

filter_var($url, FILTER_VALIDATE_URL);

Тогда, если URL-адрес действителен, я сделаю запрос CURL, чтобы узнать, получу ли я ответ 200.

$curl = curl_init();
curl_setopt($curl, CURLOPT_URL, $url);

Это были бы 2 отдельные функции, но мой вопрос: где этот код лучше всего разместить в иерархии папок Laravel?

Я полагаю, что это будет "отлично" вКонтроллер, но для меня это похоже на бизнес-логику, однако, не совсем корректно создавать новую модель Laravel, чтобы просто вызывать 2 функции, хотя я мог бы переборщить с этим.

1 Ответ

0 голосов
/ 20 мая 2019

Laravel предоставляет несколько способов проверки входящих данных.Уже есть правило для проверки активного URL здесь .

Но поскольку у вас есть несколько требований, я бы пошел с пользовательским правилом проверки .

Я не фанат запроса curl, выполняемого в главном потоке, так как он заблокирует запрос в случае задержки ответа, поэтому вы можете использовать Queue для этого.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...