好的,我正在尝试使用请求模块向 API 端点发出两个或多个请求。我正在渲染一个 HTML 文件,并使用以下代码将返回的 JSON 传递到车把模板:
res.render('list.html', {
title: 'List',
data: returnedJSON
}
然后,我可以相当轻松地在车把模板中迭代此 JSON。
我遇到的问题是,我现在需要使用多个数据源,其中将根据类别 JSON 响应构建类别列表,并根据员工 JSON 响应构建员工列表。我想要一个简单的解决方案,可以做到这一点,但可以扩展它以使用任意数量的数据源。
下面是我使用一个数据源所拥有的完整代码片段:
request({
url: 'https://api.com/categories',
headers: {
'Bearer': 'sampleapitoken'
}
}, function(error, response, body) {
if(error || response.statusCode !== 200) {
// handle error
} else {
var json = JSON.parse(body);
res.render('list.html', {
title: 'Listing',
data: json
});
}
});
这对于一个端点非常有用,但正如之前提到的,我现在需要使用多个请求并拥有多个数据源,例如:
request({
url: ['https://api.com/categories','https://api.com/staff'],
headers: {
'Bearer': 'sampleapitoken'
}
}, function(error, response, body1, body2) {
if(error || response.statusCode !== 200) {
// handle error
} else {
var json1 = JSON.parse(body1);
var json2 = JSON.parse(body2);
res.render('list.html', {
title: 'Listing',
staff: json1,
categories: json2
});
}
});
我很欣赏上述内容并非如此,但我希望这可以帮助传达我想要实现的目标。
提前致谢 :)