[英]Angular 4 and Nodejs http post request implementation error
I created small test application using Angular 4 and Nodejs . 我使用Angular 4和Nodejs创建了小型测试应用程序。 I want to insert a text field value to the database either Mongo or mysql.
我想将文本字段值插入数据库Mongo或mysql。
Following files I created server.js for running nodejs , Created server>router folder with another file api.js and Angular 4 user component created. 在我创建用于运行nodejs的 server.js文件之后,创建了server> router文件夹,并创建了另一个文件api.js和Angular 4 用户组件 。 What i did code shown below
我所做的代码如下所示
user.component.html user.component.html
<form (submit)="addHobby(hobbies,hobby.value)">
<input type="text" #hobby>
<input type="submit" value="Submit">
</form>
user.component.ts user.component.ts
addHobby(arrHob,hobby) {
if(arrHob.indexOf(hobby) == -1) {
this.hobbies.unshift(hobby);
this.dataService.postHobby(hobby).subscribe((posts) => {
console.log(posts);
})
}
return false;
}
Services folder contain data.service.ts 服务文件夹包含data.service.ts
postHobby(hobby) {
return this.http.post('/api/insertHobby',hobby).map(res => res.json().data);
}
server router folder contain api.js 服务器路由器文件夹包含api.js
router.post('/insertHobby', (req, res) => {
console.log("Welcome to post method");
console.log(req.body.data);
})
When form submitting i'm getting output as only welcome to post method 提交表单时,我只接受发布方法的输出
req.body.data i'm getting as *'Undefined'*
How to resolve this issue. req.body.data我得到
*'Undefined'*
如何解决此问题。 Any way thanks to everyone.. 谢谢大家。
since you are not passing the variable as object , you need to pass it in object format as below : 由于您没有将变量作为对象传递,因此需要按以下对象格式传递它:
postHobby(hobby) {
return this.http.post('/api/insertHobby',{hobby: hobby}).map(res => res.json().data);
}
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.