まだ途中

やりたいこと

  • 自分のサービスに外部SNSなどを使ってログインさせたい
  • 例えばログインページに Googleアカウントでログイン などのボタンを置いて、googleに飛んで許可を押して戻ってくると自分のサービスもそのアカウントでログインされているような仕組み

調べる対象のサービス

  • 下記あたりを調べたい
    • Google
    • Instagram
    • LINE
    • Facebook
    • Twitter
    • Github

Twitter

python-twitter

  • Document https://python-twitter.readthedocs.io/en/latest/
  • まずはGetting Startedから簡単な動かし方を調べる
  • Getting your application tokens と言われるので、tokenをTwitterのデベロッパーページから取ってくる
  • developer accountの登録が必須だったので促されるままに登録。なんか前よりAPIを叩くまでのハードルが上がっている気がする
  • CONSUMER_KEYやCONSUMER_SECRETなどを取得したらexamplesにある適当なpyをコピーして叩いてみる(view_friends.pyとか)

ライブラリの作り

  • そもそもやりたいことがフォロワーを取得したりツイートを取得したりではないので、それぴったりというexampleやメソッドはない
  • なので引き続き公式のドキュメントを読み進めていくと、Implementing Sign in with Twitterのページがあるのでそれを参考に

ログインページへユーザーをリダイレクトさせる方法

  • やることは下記
    • 自分のTwitter Appに登録したConsumer keyなどを用いてrequest tokenを取得
    • それをGETパラメータにした oauth/authenticate?oauth_token=xxxx にユーザーをリダイレクト
  • もう少し分解すると
    • (なければ)Twitter developer account作成
    • Twitter App作成
    • Consumer keyとConsumer secretをコピー
    • 実装したい言語のライブラリでoauth_tokenを取得するプログラムを書く
    • 基本的にはConsumer keyとConsumer secretは一般ユーザーが見えないところに置く。なのでoauth_tokenを生成するAPIを作って、それを取得してユーザーをリダイレクトさせるページを作成
  • みたいな感じがデモ作成の流れ