ノードjsは初めてです。いろいろなことで遊んでいます。現在、Twitterからデータを取得できず、mongodbデータベースに保存することもできます。保存されたデータベースをmongodbからフェッチして、ブラウザーに表示したいと思います。誰かがデータのフェッチと表示を手伝ってくれませんか.....
var express = require('express');
var app = express.createServer(),
twitter = require('ntwitter');
var mongojs = require('mongojs');
var db = mongojs('tweakdb', ['tweakdb']);
var bodyParser = require('body-parser');
var a='love';
var b='hate';
var watchList = [a, b];
var twit = new twitter({
consumer_key: '',
consumer_secret: '',
access_token_key: '',
access_token_secret: ''
});
twit.stream('statuses/filter', { track: watchList }, function(stream) {
stream.on('data', function (data) {
console.log(data.user.screen_name + ': ' + data.text);
console.log(data);
console.log("\n\n\n\n");
db.tweakdb.findAndModify({
query: {'id': 'data.id'},
update: { $set: data},
upsert: true,
new: true
})
});
});
app.listen(3000);
上記のアプリの実行コードを貼り付けました。
まず、ルーターのmongoドキュメントからツイートを取得する必要があります
router.get('/tweets', function(req, res) {
var db = req.db;
//you can filter tweets by screen name or other fields
// var query = {"user.screen_name":"PUT_HERE_AS_PER_YOUR_REQUIREMENT"};
db.tweakdb.find().toArray(function(err, tweets) {
if(err) {
res.status(err.status || 500);
res.render('error', {
message: err.message,
error: err
});
} else {
res.json(tweets);
//res will get into router
}
});
});
エクスプレステンプレートルーティングに従ってtweets.jadeをレンダリングするようになりました
//tweets.jade
extends layout
block content
h1.
Tweet List
ul
each tweet, i in tweets
li
tweet.id = tweet.text = tweet.place
リンクを介してヒスイのテンプレート構造を理解する必要があります
この記事はインターネットから収集されたものであり、転載の際にはソースを示してください。
侵害の場合は、連絡してください[email protected]
コメントを追加