gpt4 book ai didi

json - 如何从 meteor 访问 HTTP POST 数据?

转载 作者:行者123 更新时间:2023-12-04 05:50:54 24 4
gpt4 key购买 nike

我有一个 Iron-router 路由,我想通过它通过 HTTP POST 请求接收 lat/lng 数据。

这是我的尝试:

Router.map(function () {
this.route('serverFile', {
path: '/receive/',
where: 'server',

action: function () {
var filename = this.params.filename;
resp = {'lat' : this.params.lat,
'lon' : this.params.lon};
this.response.writeHead(200, {'Content-Type': 'application/json; charset=utf-8'});
this.response.end(JSON.stringify(resp));
}
});
});

但是使用以下命令查询服务器:
curl --data "lat=12&lon=14" http://127.0.0.1:3000/receive

返回 {} .

也许 params不包含发布数据?我试图检查对象和请求,但找不到。

最佳答案

connect framework在 Iron-router 中使用 bodyParser 中间件来解析在正文中发送的数据。 bodyParser 使该数据在 request.body 中可用目的。

以下对我有用:

Router.map(function () {
this.route('serverFile', {
path: '/receive/',
where: 'server',

action: function () {
var filename = this.params.filename;
resp = {'lat' : this.request.body.lat,
'lon' : this.request.body.lon};
this.response.writeHead(200, {'Content-Type':
'application/json; charset=utf-8'});
this.response.end(JSON.stringify(resp));
}
});
});

这给了我:
> curl --data "lat=12&lon=14" http://127.0.0.1:3000/receive
{"lat":"12","lon":"14"}

另见此处:
http://www.senchalabs.org/connect/bodyParser.html

关于json - 如何从 meteor 访问 HTTP POST 数据?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21691001/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com