#reactjs #react-native #mern
Вопрос:
Я создал API из своего бэкенда, и он правильно работает с почтальонами, и если я попробую использовать свое приложение react, то оно покажет 404 error
. Я тоже "proxy": "http://localhost:5000"
в package.json
деле. Когда я пробую один и тот же код в 1-й раз, он работает правильно, но теперь он не работает.
import React, { useState, useEffect } from "react";
const Login = () => {
const [userLogin, setUserLogin] = useState({
email: "",
number: "",
});
let name, value;
const handleInputs = (e) => {
name = e.target.name;
value = e.target.value;
setUserLogin({ ...userLogin, [name]: value });
};
const postData = async (e) => {
e.preventDefault();
const { email, number } = userLogin;
console.log(userLogin);
const loginRes = await fetch("/login", {
method: "POST",
headers: {
"Content-Type": "application/json",
},
body: JSON.stringify({ email, number }),
});
const data = await loginRes.json();
if ((data.status === 422) | !data) {
window.alert("invalid data");
console.log("invalid data ");
} else {
window.alert("Data svae success!");
console.log("Data svae success!");
}
};
return (
<>
<form method="POST">
<div>
<label htmlFor="email">Email</label>
<input
type="text"
name="email"
id="email"
value={userLogin.email}
onChange={handleInputs}
/>
</div>
<div>
<label htmlFor="email">Mobile</label>
<input
type="number"
name="number"
id="number"
value={userLogin.number}
onChange={handleInputs}
/>
</div>
<div>
<input
type="submit"
value="register"
name="signup"
id="signup"
onClick={postData}
/>
</div>
</form>
</>
);
};
export default Login;
Игнорируйте это
Я создал API из своего бэкенда, и он правильно работает с почтальонами, и если я попробую использовать свое приложение react, то оно покажет 404 error
. Я тоже "proxy": "http://localhost:5000"
в package.json
деле.
Когда я пробую один и тот же код в 1-й раз, он работает правильно, но теперь он не работает.
вот мой код
Комментарии:
1. Если ваш URL правильный, то это может быть ошибкой cors. Лучший способ исправить ошибку cors-разрешить отправителю, к которому вы пытаетесь получить доступ к серверной части. Может быть, вам тоже стоит поделиться сообщением об ошибке
2. нет, ошибки cors нет
3. является ли ваш URL-адрес для выборки правильным? Я имею в виду, не выглядит ли это как » localhost:5000/логин » или что-то в этом роде? может быть, эта ссылка вам поможет. jasonwatmore.com/post/2020/02/01/…
4. нет, это только локальный хост:5000