将获取 "post" 请求移动到单独的文件
Moving fetch "post" request to a separate file
你能告诉我是否可以在单独的文件中提出“post”请求吗?
我用文件“api.js”创建了一个文件夹,并将“get”请求放在那里,我想知道如何发出“post”请求(如果可能)。
例如,将此代码放入“api.js”文件中。
const handleSubmit = async (event: SyntheticEvent) => {
event.persist();
event.preventDefault();
await fetch(process.env.REACT_APP_API + "account/register", {
method: "POST",
headers: {
Accept: "application/json",
"Content-Type": "application/json",
},
body: JSON.stringify({
Name: event.target.Name.value,
Email: event.target.Email.value,
Phone: event.target.Phone.value,
Password: event.target.Password.value,
PasswordConfirm: event.target.PasswordConfirm.value,
RememberMe: RememberMe,
UserRole: Roles,
}),
})
.then((res) => res.json())
.then(
(result) => {
console.log(result);
},
(error) => {
alert("Error");
}
);
setRegister(true);
};
是的,这是可能的,您只需要确保执行 API 调用的函数正在返回结果。然后从新文件导出函数。
完成后,您可以将其导入到您要使用它的函数中,并在那里等待您的结果。我在这里做了一个小演示,希望对您有所帮助:
https://codesandbox.io/s/inspiring-meitner-g5otf
一种更简洁的方法可能是使用 React Hooks 并更新全局上下文,但根据您的需要,上述方法应该可行。
你能告诉我是否可以在单独的文件中提出“post”请求吗? 我用文件“api.js”创建了一个文件夹,并将“get”请求放在那里,我想知道如何发出“post”请求(如果可能)。
例如,将此代码放入“api.js”文件中。
const handleSubmit = async (event: SyntheticEvent) => {
event.persist();
event.preventDefault();
await fetch(process.env.REACT_APP_API + "account/register", {
method: "POST",
headers: {
Accept: "application/json",
"Content-Type": "application/json",
},
body: JSON.stringify({
Name: event.target.Name.value,
Email: event.target.Email.value,
Phone: event.target.Phone.value,
Password: event.target.Password.value,
PasswordConfirm: event.target.PasswordConfirm.value,
RememberMe: RememberMe,
UserRole: Roles,
}),
})
.then((res) => res.json())
.then(
(result) => {
console.log(result);
},
(error) => {
alert("Error");
}
);
setRegister(true);
};
是的,这是可能的,您只需要确保执行 API 调用的函数正在返回结果。然后从新文件导出函数。
完成后,您可以将其导入到您要使用它的函数中,并在那里等待您的结果。我在这里做了一个小演示,希望对您有所帮助:
https://codesandbox.io/s/inspiring-meitner-g5otf
一种更简洁的方法可能是使用 React Hooks 并更新全局上下文,但根据您的需要,上述方法应该可行。