[英]How to show last 20 tweets with twitter api on express.js with node.js?
我想使用Twitter API( https://www.npmjs.com/package/twitter ),以下是我想添加的想法:
app.js和package.json
var express = require("express"),
path = require("path"),
http = require("http"),
twitter = require("twitter"),
app = express();
http.createServer(app).listen(3000);
twitter_data.js
var Twitter = require('twitter');
var client = new Twitter({
consumer_key: '',
consumer_secret: '',
access_token_key: '',
access_token_secret: ''
});
var params = {screen_name: 'nodejs'};
client.get('statuses/user_timeline', params, function(error, tweets, response){
if (!error) {
console.log(tweets);
}
});
我會盡量保持簡短,我們走了:
首先安裝express-generator模塊: npm install -g express-generator
運行express --hbs
(你可以選擇Jade或其他任何東西,但我更喜歡Handlebars,所以我會繼續這樣做)
轉到該文件夾並安裝依賴項: npm install
安裝twitter模塊: npm install --save twitter
轉到Twitter的應用程序管理頁面並創建您的應用程序。 獲取必要的密鑰:consumer_key,consumer_secret,access_token_key和access_token_secret。
在此之后,我想分享實際的代碼,而不是解釋做什么
這是/routes/index.js文件:
var express = require('express');
var Twitter = require('twitter');
var router = express.Router();
var client = new Twitter({
consumer_key: 'XXX',
consumer_secret: 'XXX',
access_token_key: 'XXX',
access_token_secret: 'XXX'
});
router.get('/', function(req, res, next) {
// https://dev.twitter.com/rest/reference/get/statuses/user_timeline
client.get('statuses/user_timeline', { screen_name: 'nodejs', count: 20 }, function(error, tweets, response) {
if (!error) {
res.status(200).render('index', { title: 'Express', tweets: tweets });
}
else {
res.status(500).json({ error: error });
}
});
});
module.exports = router;
這是/views/index.hbs文件:
<ul>
{{#each tweets }}
<li>{{ this.text }}</li>
{{/each }}
</ul>
當你全部保存並運行npm start
,你可以在http:// localhost:3000上看到結果
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.