[英]Express.js render data from external API
我有一個從外部API獲取數據的功能:
app.get("/getdata", (req, res) => {
request.get({
url: 'http://externalurl',
json: true
})
.pipe(res);
});
它只是在瀏覽器中顯示接收到的JSON對象。 問題是,我該如何像使用res.render("template", {data:data})
這樣的快速方法那樣在模板中呈現此數據,以便對其進行格式化?
假設您的request
變量來自request npm包 ,則可以使用回調函數來接收響應數據:
app.get("/getdata", (req, res, next) => {
request.get("http://externalurl", (err, response, body) => {
if (err) {
return next(err);
}
res.render("template", {data: JSON.parse(body)});
});
});
另外,如果您對使用回調不滿意,則可以將request
調用包裝在Promise中,也可以使用現成的包裝器(請參考程序包的自述文件以獲取建議)。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.