Quantcast
Channel: Node.jsタグが付けられた新着記事 - Qiita
Viewing all articles
Browse latest Browse all 9138

ExpressでTwitter APIを試す

$
0
0

はじめに

後輩がTwitterAPIの話してたら気になったので、叩いてみることにした。

Twitter Developer

概要

- Twitterアカウントがあれば自分用のAPIアクセスポイントを作って、TwitterAPIを叩ける

準備

Twitterアカウント

アカウント作成

※アカウント保有者は飛ばす

TwitterAPIアクセスポイント作成

  1. TwitterDeveloperにログイン
    1.png

  2. 右上ユーザー名プルダウンからAppsへ飛ぶ

  3. Create an appよりアプリ登録
    2.PNG
    アプリ登録画面
    3.PNG

テストなので↓こんな感じの内容↓で登録

項目説明
App Nametest自分の作るアプリの名前
Descriptionjust for testアプリの説明
Website URLhttp://test.comアプリのURL
Sign in with Twitterenabled
Callback URLhttp://localhost:3000サーバーURL。本番サーバー立てたら追加
Terms of service URL
Privacy policy URL
Organization name
Organization website URL
App usagetest test test test test test test test test test test test test test test test test test test test test test test test test test詳細なアプリ説明

下のCreateを押下

  1. 作成できたらKeys and tokensタブのGenrate keyを押下

5.PNG

:bangbang::bangbang::bangbang::bangbang::bangbang:重要:bangbang::bangbang::bangbang::bangbang::bangbang:
↓こんな画面↓が出てくるので、Access tokenAccess token secretをコピペ&メモして保存

6.PNG

作成完了
 7.PNG

使用するのは4つ
- Api key
- Api secret key
- Access token
- Access token secret

Node.js

Node.jsインストール

npmも使えるようにしておく
Node.jsダウンロードサイト

使用方法

- APIレファレンスから使いたいAPIを探す。

今回はトレンドを見ることにした
HttpRequest飛ばすだけでよさそう

API Reference contents 
GET trends/available   GET trends/closest
varTwitter=require('twitter');varclient=newTwitter({consumer_key:'',consumer_secret:'',access_token_key:'',access_token_secret:''});varparams={screen_name:'nodejs'};client.get('statuses/user_timeline',params,function(error,tweets,response){if(!error){console.log(tweets);}});

サーバーを立ててみる

仕様

サーバーのURLを叩いたらTwitterのトレンド結果がとりあえず画面いっぱいに出る。

ソースコード

package.json
{"name":"twitter_api_test","version":"1.0.0","description":"","main":"index.js","scripts":{"test":"echo \"Error: no test specified\"&& exit 1","start":"node ./index.js"},"author":"","license":"ISC","dependencies":{"express":"^4.17.1","twitter":"^1.7.1"}}
index.js
// server settingsconstexpress=require("express")constserver=express();constport=3000// twitter settingsconstTwitter=require('twitter');// さっき作ったAPIの設定constAPI_KEY="AAAAAAAAAA"constAPI_SECRET_KEY="BBBBBBBBBB"constACCESS_TOKEN="CCCCCCCCCC"constACCESS_TOKEN_SECRET="DDDDDDDDDD"consttwitter=newTwitter({consumer_key:API_KEY,consumer_secret:API_SECRET_KEY,access_token_key:ACCESS_TOKEN,access_token_secret:ACCESS_TOKEN_SECRET,});// routesserver.get("/",function(req,res,next){res.send("server is up")});server.get("/trends",function(req,res,next){// ここでTwitterAPIを叩くtwitter.get('trends/available',function(error,result,response){if(error){res.send(error)}else{res.send(result);// TwitterAPIの結果をそのまま返す}});})server.listen(port,function(){console.log('Listening on port '+port)});

結果

  1. npm installしたらnpm start
  2. localhost:3000にアクセス
    8.PNG

  3. localhost:3000/trendsにアクセス
    うまくいきました
    9.PNG


Viewing all articles
Browse latest Browse all 9138

Trending Articles