【发布时间】:2018-05-15 11:21:52
【问题描述】:
我在我的网站中实现 YouTube 搜索 API,当我从我的路由调用 api 时会返回结果,但在计算结果时会呈现页面,我猜是因为异步行为。
我调用 API 的路径:
router.get('/video/results/:search_query', middleware.ensureAuthenticated, function (req, res) {
query = req.params.search_query;
console.log(query);
var dataFinal;
var resp = youtube.search.list({
part: 'snippet',
q: query,
type: 'video'
},function (err, data, response) {
if (err) {
console.error('Error: ' + err);
res.json({
status: "error"
});
}
if (data) {
// console.log(typeof data);
dataFinal = data;
// return res.json({
// status: "ok",
// data: data
// });
console.log(data);
//res.render('resultsVideo',{results:data})
}
});
res.render('resultsVideo',{data:dataFinal})
});
请告诉我如何调用 API 并使用我的 EJS 文件中的结果来显示。
【问题讨论】:
标签: javascript node.js express youtube-data-api