Я видел несколько сообщений на эту тему, но безрезультатно. У меня есть, с одной стороны, форма, которая собирает информацию (имя, имя и т. Д. c), а затем сохраняет ее в базе данных (mongodb). Все работает, когда я использую почтальон для отправки информации через маршрут / регистрацию, я вижу своего нового пользователя в mongodb. но когда я запускаю приложение в Экспо, он выдает мне «Сетевой запрос не удался».
Выборка внешнего интерфейса:
submitForm = () => {
var signupData = JSON.stringify({
first_name: this.state.firstName,
last_name: this.state.lastName,
email: this.state.email,
password: this.state.password
});
fetch(`https://localhost:3000/signup`, {
method: "POST",
headers: { "Content-Type": "application/json" },
body: signupData
})
.then(response => {
console.log(response);
return response.json();
})
.then(data => {
if (data.result) {
this.props.handleUserValid(
this.state.firstName,
this.state.lastName,
this.state.email,
data.user.token
);
this.props.navigation.navigate("Account");
}
})
.catch(error => {
console.error(error);
});
};
И внутренний маршрут:
router.post("/signup", function(req, res, next) {
var salt = uid2(32);
console.log("Signup is running...");
const newUser = new userModel({
first_name: req.body.first_name,
last_name: req.body.last_name,
email: req.body.email,
password: SHA256(req.body.password + salt).toString(encBase64),
token: uid2(32),
salt: salt
});
newUser.save(function(error, user) {
console.log("LOG: user", user);
res.json({ result: true, user });
});
});
module.exports = router;
А вот снимок экрана с ошибкой
Опять же, при использовании Postman, выборка работает хорошо, выводится мой консольный журнал и пользователь добавляется в моя база данных. Спасибо за помощь.
- РЕДАКТИРОВАТЬ -
Я запустил приложение в веб-браузере через Expo, и все работает отлично. Мои страницы входа / регистрации и страница моей учетной записи. Но на моем телефоне он не работает (IOS), это проблема сети с моего телефона (может быть, проблема с сертификатом, неправильный IP-адрес?)
Если у вас есть идея, я заинтересован, я был застрял на нем 2 дня