最近,go言語でGithubとQiitaのOauth2認証を実装することがあったのでメモ書き程度に書いていきます. OAuth2認証のフロー OAuth2のフローは以下のようになっています(Githubの場合) Githubにコードをリクエスト あらかじめ指定しておいたページに自動でリダイレクト リダイレクト時にURLにパラメータで渡されたcodeを使ってアクセストークンをリクエスト 3のレスポンスのbodyからアクセストークンを取得 アクセストークンを使ってAPIを使用 ざっくりと以上のような流れで認証します. Githubの場合 まず,Githubのアプリに登録します. そこで得られたClientIDとClientSecretをメモなどして覚えておきましょう. リダイレクト先のURLは自分のサイトの適当なURLを指定しましょう(例http://自分のサイトURL/oauth/callb