#reactjs #react-native
Вопрос:
Я использую React Native для получения некоторых данных из REST api, который основан на ядре dotnet. Когда я пытаюсь получить данные из api в эмуляторе Android, возникает сетевая ошибка, однако она работает на IOS.
Я пытался получать данные с помощью http вместо https, и это тоже работает.
Комментарии:
1. какие ошибки вы получаете? пожалуйста, включите вывод ожидаемых и неожиданных результатов, если это возможно
2. Я использую axios и получаю: [Ошибка: Сетевая ошибка] Но я попробовал тот же код на эмуляторе iOS, и он работает.
3. не могли бы вы добавить всю ошибку, напечатанную вашим IDEтерминалом?
Ответ №1:
Привет, чтобы предотвратить сетевую ошибку http
, вы можете добавить эту строку в AndroidManifest
файл
<?xml version="1.0" encoding="utf-8"?>
<manifest ...>
<uses-permission android:name="android.permission.INTERNET" />
<application
...
android:usesCleartextTraffic="true" //<--- add this line
...>
...
</application>
</manifest>
Комментарии:
1. Я попробовал это. Но http работает. Я получаю ошибку с https.
2. вы ввели свои данные в строку запроса
3. Если вы можете получить доступ по протоколу http, но не по протоколу https, это может быть проблемой доверия. С уровнем защищенных сокетов вам понадобится сертификат доверия, который позволит вам получить доступ к сайту. Вы можете проверить этот веб-сайт для получения более подробной информации: developer.android.com/training/articles/security-ssl