我是NodeJS的新手,我想知道如何让我的节点服务器不断更新网页。
所以我正在做的是我从twitter获取推文,现在我只想在基本网页上显示它们。在第一次运行期间,它看起来像这样:
姓名:ap。文字:RT @APCentralRegion:俄罗斯诗人Yevgeny Yevtushenko 专注于战争暴行的人在俄克拉荷马州死亡 姓名:ap。文字:一周之后 数百人参加了在俄罗斯举行的反政府抗议活动,警察被捕 数十次未经批准的集会。 ...
但是,在大约一分钟的时间间隔后,我收到以下错误消息:
response.write("*********End of One Interval*********")
^
TypeError: Cannot read property 'write' of undefined
我的代码如下所示,请记住,当我在createServer中使用tweet函数时,它仍然显示无法正确更新页面的相同行为,但是,终端窗口始终使用console.log正确更新< / p>
// Dependencies =========================
var
twit = require('twit'),
config = require('./config');
var http = require("http");
var url = require("url");
var Twitter = new twit(config);
// FAVORITE BOT====================
// Heavily modified from original tutorial.
var favoriteTweet = function(response, a, b){
var params = {
screen_name: a,
count: b,
// q: '#aprilfools, #aprilfoolsday', // REQUIRED
// result_type: 'recent', //recent tweets only.
//lang: 'en'
}
//console.log("Params: " + params.q);
// find the tweet
Twitter.get('statuses/user_timeline', params, function(err,data){
// find tweets
//console.log(data);
var tweet = data; //.statuses for actual tweets.
//console.log(tweet);
for(var result in tweet) {
response.write("Name: " + a + ". Text: " + tweet[result].text + "\n");
console.log("Resulting text: " + tweet[result].text);
console.log("Created At: " + tweet[result].created_at);
}
//console.log(tweet);
response.write("*********End of One Interval*********")
console.log("*********End of One Interval*********")
});
}
http.createServer(function(request, response) {
response.writeHead(200, {"Content-Type":"text/plain"});
var params = url.parse(request.url, true).query;
var a = params.name;
var b = parseInt(params.count);
// grab & 'favorite' as soon as program is running...
favoriteTweet(response, a, b);
// 'favorite' a tweet in every 1 minute
setInterval(favoriteTweet, 60000);
}).listen(9090);
答案 0 :(得分:1)