Если вы в настоящее время работаете над приложением с React Native и используете Laravel в качестве серверной части, вы, вероятно, столкнулись с этой проблемой.
И эта статья поможет вам решить эту проблему, используя всего лишь ОДИН ПРОСТОЙ ТРЮК.
ИНОГДА ЭТА ПРОБЛЕМА ВОЗНИКАЕТ ИЗ-ЗА ТОГО, КАК ВЫ ЗАПУСКАЕТЕ ПРИЛОЖЕНИЕ LARAVEL
Мы все знаем, как запустить сервер Laravel с помощью простой команды php artisan serve, и в этом проблема.
Запустив ваше приложение Laravel таким образом, оно создает ссылку для вашего приложения, которая является localhost:8000 (порт может быть другим для вас, это может быть 3000, 8080 или любой другой, но мы будем использовать 8000 для этот учебник).
При выполнении HTTP-запроса с React Native возникает какой-то конфликт, потому что ваше приложение для Android запускается на эмуляторе, который также использует локальный хост, и вместо отправки запроса на локальный хост на вашем компьютере он отправляет запрос на сам телефон но с другим портом, и поэтому вы получаете эту ошибку.
ТРЮК, КОТОРЫЙ МНЕ ПОМОГ
Это просто! Запустите свое приложение, как обычно, но не забудьте указать IP-адрес и порт, это поможет вам решить ошибку Network Request Failed.
ПРИМЕЧАНИЕ. Замените 10.10.10.2 своим IP-адресом, это всего лишь пример
А в мобильном приложении убедитесь, что вы используете правильный URL-адрес в своем запросе.
Убедитесь, что CORS включен в вашем бэкенде, чтобы избежать ошибок, связанных с CORS. В следующий раз я сделаю подробный пост о том, как его включить и как решить проблемы, связанные с CORS.
ВЫВОД
- Запустите приложение Laravel и введите свой IP-адрес и порт.
- Используйте URL-адрес в своем HTTP-запросе.
Вот и все, я надеюсь, что этот пост был вам полезен и удачного кодирования!