Javascript 如何在reactjs中向nodejs RESTful API发出POST请求
我用Javascript 如何在reactjs中向nodejs RESTful API发出POST请求,javascript,node.js,ajax,reactjs,api,Javascript,Node.js,Ajax,Reactjs,Api,我用nodejs和express构建了我的后端restfulapi,我也在Reactjs上构建了一个前端,我正在尝试创建一个登录页面。 我的想法是在Reactjs中向我的Nodejsrestful API发出POST请求,包括用户名和密码,然后后端将检查请求信息是否正确并返回令牌,否则将返回失败消息。 但是我不知道在reactjs中发出POST请求的正确方法是什么。 我是否只使用$.ajax()? 我尽量避免使用jquery,因为我认为有很多方法可以做同样的事情。 提前感谢。使用。不需要使用jq
nodejs
和express
构建了我的后端restfulapi,我也在Reactjs上构建了一个前端,我正在尝试创建一个登录页面。
我的想法是在Reactjs
中向我的Nodejs
restful API发出POST请求,包括用户名和密码,然后后端将检查请求信息是否正确并返回令牌,否则将返回失败消息。
但是我不知道在reactjs
中发出POST请求的正确方法是什么。
我是否只使用$.ajax()
?
我尽量避免使用jquery
,因为我认为有很多方法可以做同样的事情。
提前感谢。使用。不需要使用jquery
axios.post("http://api/login", { options }).then(res => ...).catch(err => ...)
选项将是:{用户名:用户名,密码:密码…等}
在fetch
中,我喜欢它的地方在于,您可以定义一个(而不是编写http://localhost:5000/api/...
对于每个AJAX
请求)和axios
自动处理JSON
使用。不需要使用jquery
axios.post("http://api/login", { options }).then(res => ...).catch(err => ...)
选项将是:{用户名:用户名,密码:密码…等}
在
fetch
中,我喜欢它的地方在于,您可以定义一个(而不是编写http://localhost:5000/api/...
对于每个AJAX
请求)和axios
自动处理JSON您应该将axios.js与saga.js框架一起使用
//发送POST请求
axios({
方法:“post”,
url:“/user/12345”,
数据:{
名字:“弗雷德”,
姓氏:“燧石”
}
});代码>您应该在saga.js框架中使用axios.js
//发送POST请求
axios({
方法:“post”,
url:“/user/12345”,
数据:{
名字:“弗雷德”,
姓氏:“燧石”
}
});
如果不想使用第三方库,可以使用获取
查看一篇关于如何在react中使用fetch的文章。如果不想使用第三方库,可以使用fetch
查看一篇关于如何在react中使用获取的好文章。只需实现这一点
function submitRequest(opts) {
console.log('Posting request to your API...');
fetch('http://your_url', {
method: 'post',
body: JSON.stringify(opts)
}).then(function(response) {
return response.json();
}).then(function(data) {
console.log(':', data);
});
}
只要做到这一点
function submitRequest(opts) {
console.log('Posting request to your API...');
fetch('http://your_url', {
method: 'post',
body: JSON.stringify(opts)
}).then(function(response) {
return response.json();
}).then(function(data) {
console.log(':', data);
});
}
它不应该是axios.post(“,{username:username,password:password})。然后(res=>…).catch(err=>…)??第二个参数更新了注释。:)它不应该是axios.post(“,{username:username,password:password})。然后(res=>…).catch(err=>…)??第二个参数更新了注释。:)尝试使用axios
或fetch
尝试使用axios
或fetch
谢谢,这绝对是我的一天。谢谢,这绝对是我的一天。