TwitterのAPIをたたくサンプル実装
- TwitterDeveloperPortalへの登録
- TwitterDeveloperPortalでAppを作成しておく
https://developer.twitter.com/en/docs/twitter-api/v1
- 全てのAPIをたたくには、TwitterDeveloperPortalで作成したAppの
Consumer Keys
による認証が必要 - 特定のユーザーに対するアクション(フォローするなど)などのAPIを叩く場合は、
Consumer Keys
に加え、Twitter UserのAccess Token
が必要 - Twitter Userの
Access Token
の取得方法- TwitterDeveloperPortalのAppのオーナーであるTwitter Userの
Access Token
はTwitterDeveloperPortal上でAccess Token
の取得可能 - それ以外のTwitter Userの
Access Token
を取得するには、Twitter Sign-inによる認証をする必要がある
- TwitterDeveloperPortalのAppのオーナーであるTwitter Userの
- no-user-context-api
- ユーザー認証が不要なAPIをたたくサンプル
- ツイートを検索したり、ユーザーのタイムラインを取得するだけならこれ
- user-context-api-by-app-owner
- ユーザー認証が必要なAPIをたたくサンプル
- Twitter Appのオーナーのユーザーを認証する前提なので、Access TokensはTwitterDeveloperPortalで発行する前提
- 不特定多数のTwitter Userに
Twitter Sign-in
を要求しないが、ユーザー認証が必要なAPIを叩く場合はこれ
- user-context-api-by-any-user
- ユーザー認証が必要なAPIをたたくサンプル
- 不特定多数のTwitter Userに
Twitter Sign-in
を要求し、それぞれのTwitter UserのAccess Tokens
を使ってユーザー認証が必要なAPIを叩く場合はこれ - たとえば、
Twitter Sign-in
に対して、フォローするAPIをたたいてあげる、みたいなことやる場合はこれ
Twitter APIを使えるライブラリ一覧はこちら https://developer.twitter.com/en/docs/twitter-api/tools-and-libraries
今回はGo言語のライブラリを使いました https://github.com/dghubble/go-twitter
- 機密情報とはTwitter Userの``Access Tokens
やTwitter Appの
Consumer Key` - これはサンプルなので、わりとてきとうに扱ってるので、本番で使う場合は注意してください
- Twitterも公式ドキュメントで機密情報の取り扱いに関して、注意しています