繁体   English   中英

NodeJS ExpressJS如何打印API结果数组?

[英]NodeJS ExpressJS How to print API results array?

我正在使用twitter API获取推文,然后将其推入数组。 然后,我想将整个数组(我只想知道可以传递值)打印到HTML文档中并显示出来。 谢谢!

代码如下:

var express = require("express");
var twit = require("twitter"),
    twitter = new twit({
        consumer_key: 'SECRET',
        consumer_secret: 'SECRET',
        access_token_key: 'SECRET',
        access_token_secret: 'SECRET'
    });

var tweets = [],
    util = require('util');

twitter.stream('statuses/filter', {track: 'love, hate'}, function(stream){
    stream.on('data', function(data){
        if ('delete' in data === false){
            tweets.push(data);
        }
    });

    setTimeout(function(){
        console.log('Collected ' + tweets.length + ' tweets.');
        stream.destroy();
    }, 1000);
});



var app = express();
var path = require('path');


app.set('port', process.env.PORT || 2400);

function home(req,res){
    res.setHeader("Content-Type", 'text/html');
    res.sendFile(path.join(__dirname + '/index.html'));
}

app.use(express.static(__dirname + '/public'));

app.get('/', home);
app.listen(app.get('port'));

console.log('Server running at 2400');

多谢你们。 我从这里弄清楚了其余的信息,知道我需要使用Jade: 在将数组传递给node.js中的jade模板时遇到问题

您是否要构建一个从Twitter流数据到用户Web的实时应用程序? 使用socket.io是将数据实时实时发送到Web前端的最简单方法

使用Jade模板引擎,我将对您的代码进行一些小的更改,然后使用Jade模板代替html文件。

您的代码:

app.set('views', './views');
app.set('view engine', 'jade');

function home(req,res) {
    res.setHeader("Content-Type", 'text/html');
    res.render('index', {tweets: tweets});
}

index.jade

ul
  each tweet in tweets
    li= tweet

以下是可帮助您将Jade整合到您的应用程序中的文档:

在Express中使用模板引擎

玉模板引擎

Jade迭代语法

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM