我想使用URLSearchParams向服务器发送获取请求,但由于某种原因,服务器一直向我发送错误JSON解析错误:意外标记:〈我把.json改成.text,然后返回一个500的错误同样的fetch请求在我的react js上运行良好我不是react native开发者,所以我不确定问题出在哪里,但是经过一些研究,我发现URLSearchParams在react native中是无效的,所以我想知道是否有替代方法这是我的fetch请求:
const handleSubmit = async (e) => {
if (e) {
e.preventDefault();
}
if (!recaptchaToken) {
alert("Please verify that you're a human");
return;
}
const formData = new URLSearchParams();
formData.append("email", email);
formData.append("password", password);
formData.append("passwordCheck", passwordCheck);
formData.append("recaptcha", recaptchaToken);
formData.append("profile", "Unfinished");
fetch("/register", {
method: "POST",
headers: { "Content-Type": "application/x-www-form-urlencoded" },
body: formData,
})
.then((res) => res.json())
.then((data) => {
console.log('data', data)
if (data !== "Email already in use") {
console.log("success");
} else {
if (data === "Email already in use") {
setRegisterError("Cette adresse e-mail est déjà utilisée");
} else {
setError(data);
console.log(error);
}
}
})
.catch((err) => console.log(err));
};
1条答案
按热度按时间sshcrbum1#
我想知道为什么您必须使用
URLSearchParams()
时,您已经有FormData()
可供您使用,以解决您的问题。使用这样的代码,我认为它会起作用
在本例中,我们创建一个新的
FormData
对象,并使用append方法将表单数据追加到该对象中。