メインコンテンツまでスキップ

コールバック時にエラー「400 Bad Request」が発生する

ソーシャルログインの完了間際、ログインプロバイダ側での同意が完了したあとに「400 Bad Request」が発生する場合は、以下のようなケースが考えられます。

いずれの場合も、ソーシャルPLUS のソーシャルログイン時のセッションが維持されておらず、不正なリクエストであると判断されるために発生します(下記図の①〜③の間のセッション)。

ソーシャルログイン中のエラー発生箇所

PC 環境

PC 環境ではほぼ発生しません。

スマートフォン環境

いずれの場合もソーシャルログイン時のセッションが継続できないために発生します。

  • ブラウザのシークレットモードでアクセスしている
  • ソーシャルログイン開始時と、ソーシャルログイン完了時(ログインプロバイダ側の画面から次の画面へ遷移する際)にアクセスするブラウザ・アプリが異なる
  • アクセスしているブラウザ・アプリで Cookie の利用を禁止している
  • 通信環境が極端に悪い
備考

スマートフォン環境では、とくに「LINE 自動ログイン」(アプリでログイン)を利用した場合に発生しやすい状況となっています。

「LINE 自動ログイン」では LINE 側の仕様により、LINE アプリで認証・認可が行われた結果は必ずスマートフォンの標準ブラウザ(iOS であれば Safari 固定)へ遷移します。

そのため、標準ブラウザ以外から「LINE 自動ログイン」を行った場合、標準ブラウザに遷移した際にソーシャルログイン開始時のセッション情報が取得できず、不正なリクエストとなります。

備考

ソーシャルログイン開始時と、ソーシャルログイン完了時にアクセスするブラウザ・アプリが異なる問題は、以下のような環境からソーシャルログインを開始して、ログイン完了までに別のブラウザ・アプリへ遷移することがある場合に発生します。

  • Gmail などのメールアプリの内部ブラウザからログインを開始した
  • QR コード読み取りアプリの内部ブラウザからログインを開始した
  • その他アプリの内部ブラウザからログインを開始した

これらのアプリから URL を開く際には、一度標準ブラウザからページを開き直し、そこからソーシャルログインを開始するようにご案内ください。

注記

この事象は 3rd Pary Cookie(サードパーティ Cookie)の規制によるものではありません。

関連ドキュメント