从 Angular2 组件向 node.js 发送数据
Posted
技术标签:
【中文标题】从 Angular2 组件向 node.js 发送数据【英文标题】:Send data to node.js from Angular2 Component 【发布时间】:2017-07-31 16:26:19 【问题描述】:所以我想向我的节点服务器发送一些string
值并在 mysql 表中找到该值。
我有一个从服务获取数据的组件
ngOnInit()
this.instructionsService.getAllInstructions().subscribe(instructions =>
this.instructions = instructions;
);
然后我有一个从node
服务器获取数据的服务
getAllInstructions()
return this.http.get('/api/profile/')
.map(res => res.json());
最后我有了节点 api
app.get('/profile',getAllInstructions);
function getAllInstructions(req,res)
connection.query("select * from users where id='somekindofid'",function(err, rows, fields)
res.json(rows);
`
我想用我的组件发送的值替换那个 'somekindofid'
我该怎么做?
【问题讨论】:
【参考方案1】:您应该将 id
传递给其 URL 本身内的节点方法。
同样,您应该将 API 路由更改为 /profile/:id
,其中 id
是将从 API 的使用者传递的参数。
节点
app.get('/profile/:id',getAllInstructions);
function getAllInstructions(req,res)
connection.query("select * from users where id="+ req.params.id,function(err, rows, fields)
res.json(rows);
服务
getAllInstructions(id)
return this.http.get(`/api/profile/$id`)
.map(res => res.json());
组件
ngOnInit()
let userId = 'pankaj';
this.instructionsService.getAllInstructions(userId).subscribe(instructions =>
this.instructions = instructions;
);
【讨论】:
以上是关于从 Angular2 组件向 node.js 发送数据的主要内容,如果未能解决你的问题,请参考以下文章
从 Swift 4 向 Node.js 发送 post 请求
如何从 Angular 6 向 node.js 发送 https 请求