node.js - 如何使用 Express JS 和 Jade 访问 instagram API?

标签 node.js api express instagram mean-stack

我在获取 Instagram API 的信息并将其发送到 Jade 以在前端呈现时遇到一些问题。

app.route("/api")
.get(function(req, res){
    var url = "https://api.instagram.com/v1/users/1234/media/recent/?client_id=XXXX";

    request(url, function(err, res, data){
        console.log(JSON.parse(data));
        // does this go here 
        res.render('show', {media : data});
    });
    // or here?
    res.render('show', {media : data});
});      

我正在尝试从此 API 路径收集 10 张图像并将它们发送到 Jade。我在终端中收到多个条目的解析响应。我很难弄清楚如何向 Jade 文件发送多个响应,然后让 Jade 文件循环遍历它们。

我确实知道 url 变量中的用户 ID 和客户端 ID 不正确。如果您有任何使用 request() 的替代方法,我也对此持开放态度。

最佳答案

所以我正在回答我自己的问题。渲染必须在 request() 函数内部。问题出在我的回调中。问题是我有“res”作为我的 .get 和 request() 回调的响应。当我将 request() 函数中的“res”更改为“response”时,我不再遇到任何问题。 Jade 文件也在下面

app.route("/api2")
.get(function(req, res){

    var url = "https://api.instagram.com/v1/users/1234/media/recent/?client_id=XXXX";

    request(url, function(err, response, body){
        var dataGram = JSON.parse(body);
        res.render('show', dataGram);
    });
});

Jade 文件:

each thing in data
   h1 id : #{thing.id}
   img(src="#{thing.images.thumbnail.url}")
   a(href="#{thing.link}" target="_blank") link
   h3 filter : #{thing.filter}

关于node.js - 如何使用 Express JS 和 Jade 访问 instagram API?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23224070/

相关文章:

debugging - Mongoose 调试日志到单独的文件

node.js - NestJS nodejs 在一个带有关系的查询中加载嵌套评论?

node.js - 无法调用我的 lambda 函数

javascript - GraphQL 和 Sequelize 不返回插入的对象

Python 与 JIRA XRAY 集成

javascript - 从 promise 对象(服务器端)获取值到客户端 index.html

javascript - 如何在 Express.js 中为路由的子路径呈现不同的 View ?

android - Google+ API 和 Google+ Domain API 之间有什么区别?

ios - 人们如何拥有显示没有 Logo 的 map 的移动应用程序

javascript - passport.js + express : TypeError ('Router.use() requires a middleware function but got a ' + gettype(fn))