我有两个网址,它们会添加新用户并按顺序编辑用户。如何将第一个请求的输出作为输入传递给第二个请求。
http://localhost:3010/postuser
{"name":"xyz"}
// response will be unique id =>001
http://localhost:3010/putuser
{"id":001} //Get the output of first request as input here
以下是我的代码
function httpGet(options, callback) {
request(options,
function (err, res, body) {
callback(err, body);
}
);
}
const urls = [
{
url: 'http://localhost:3010/postuser',
method: 'POST'
},
{
url: 'http://localhost:3010/putuser',
method: 'PUT'
}
];
async.mapSeries(urls, httpGet, function (err, res) {
if (err) return console.log(err);
console.log(res);
});
答案 0 :(得分:1)
使用async.waterfall以便将来自一个函数的数据传递给下一个函数。查看link中的示例。所以基本上你将调用httpGet函数并使用回调将从API1接收的数据传递给下一个函数。然后你可以调用API2。