#reactjs #react-native #react-navigation
#reactjs #react-native #реакция-навигация
Вопрос:
При запуске функции входа в систему сообщается, что ошибка сетевого запроса TypeError не удалась
login = () => {
fetch('http://192.881.5.222:3000/user',{
method: 'POST',
headers: {
'Accept': 'application/json',
'Content-Type': 'application/json',
},
body: JSON.stringify({
"username": this.state.username,
"password": this.state.password,
})
})
.then((response) => response.json())
.then((res) => {
alert(res.message);
if(res.success === true){
AsyncStorage.setItem('user', res.user);
this.props.NavigationContainer.Stack('Profile');
} else {
alert(res.message);
}
})
.done();
}
}
Я обновил свой file.plist, я даже меняю порт прослушивания, но, похоже, ничего не работает.
Я использую iPhone. реальное устройство, использующее expo client
Комментарии:
1. Это приложение react native, я пробовал много попыток решить эту проблему, я понимаю, что iPhone отклоняет HTTP, поэтому мне пришлось обновить свой file.plist, чтобы принять HTTP:
2. Можете ли вы добавить catch и опубликовать всю ошибку
3. также попробуйте добавить android: usesCleartextTraffic=»true» в AndroidManifest.xml и проверить
4. @DILEEPTHOMAS спасибо, приятель, это сработало.
5. @ Ab рад помочь, пожалуйста, примите и проголосуйте, если это помогло вам, чтобы это было полезно для других
Ответ №1:
Итак, как обсуждалось в комментариях, исправление заключалось в добавлении конфигурации в
AndroidManifest.xml
android:usesCleartextTraffic="true" in AndroidManifest.xml