Javascript 向我自己的API发送请求,以更改未更新的DB。我想更新数据库
我很难理解如何向用express to do CRUD方法设置的API发出请求。在下面的代码中,Javascript 向我自己的API发送请求,以更改未更新的DB。我想更新数据库,javascript,node.js,api,express,Javascript,Node.js,Api,Express,我很难理解如何向用express to do CRUD方法设置的API发出请求。在下面的代码中,.get(/bears)呈现一个表单,在app.post(“/bears”)中,我使用nPmodule“request”将请求发送到api/bears路由器,通过这样做,我希望文本框的名称attr(与db上的字段相同)被添加到db(bear.save(函数(err){)这不是问题所在 有人请告诉我如何从路由(页面)调用api,以便api可以从视图中的html表单中更新db 我想Angular已经为这项
.get(/bears)
呈现一个表单,在app.post(“/bears”)
中,我使用nPmodule“request”将请求发送到api/bears路由器,通过这样做,我希望文本框的名称attr(与db上的字段相同)被添加到db(bear.save(函数(err){
)这不是问题所在
有人请告诉我如何从路由(页面)调用api,以便api可以从视图中的html表单中更新db
我想Angular已经为这项服务提供了,但我想看看如何使用express来实现这一点。是否可以在没有npm请求的情况下实现这一点
了解更多代码
app.get('/bears', function(req, res){
res.render('index', {message : "You are rendered!"});
})
app.post('/bears', function(req, res){
// request.post('http://localhost:8080/api/bears',function(error, response, body){
// if(!error && response.statusCode == 200){
// var info = JSON.parse(body)
// res.send(info);
// }else{
// res.send(error);
// }
// })
request.post('http://localhost:8080/api/bears', function(error, response, body){
console.log(body);
console.log(response)
})
})
router.route('/bears')
.post(function(req, res){
var bear = new Bear();
bear.name = req.body.name;
bear.save(function(err){
if(err)
res.send(err);
res.json({message : 'Bear created!'});
})
})
.get(function(req, res){
Bear.find(function(err, bears){
if(err)
res.send(err);
res.json(bears);
console.log(bears[0].id)
})
})
这似乎有效。我不知道我可以将
req.body.name
作为“值”
app.post('/bears', function(req, res){
// request.post('http://localhost:8080/api/bears',function(error, response, body){
// if(!error && response.statusCode == 200){
// var info = JSON.parse(body)
// res.send(info);
// }else{
// res.send(error);
// }
// })
request.post({url : 'http://localhost:8080/api/bears', form : {name : req.body.name }}, function(err, httpResponse, body){
res.redirect("/alpha");
})
})
app.get('/alpha', function(req, res){
res.send('It was updated');
})