ローカルマシンでGoogleソーシャルログインシステムをテストしたい。ただし、新しいOAuthボタン: 'Create New Client ID'を作成する場合、有効なアドレス(.comまたは.orgで終わる)である必要がある承認済みリダイレクトURIを入力する必要があります) 。
明らかにローカルで開発する場合、最後に.comや.orgはありません。私はvirtualhostをセットアップしています...そして私のローカル開発への私のアドレスはmywebsite.localです
エラーを受信せずにリダイレクトURIをmywebsite.local
に入力する方法はありますか。
無効なリダイレクト: http://mywebsite.local/login/auth はパブリックトップレベルドメイン(.comや.orgなど)で終わる必要があります
「承認済みリダイレクトURI」をローカルIPに設定できます( http://127.0.0.1/callback など)。これは私にとってはうまく機能しています。
本当に悩ましいのは、Googleがユーザーに外部IP(99.99.99.99のようなサーバーIP)を「承認済みリダイレクトURI」として構成することを許可しないことです。ドメイン(.comや.orgなど)。
Pinoyyidの答えに加えて、/etc/hosts
ファイルに必要なものは次のとおりです。
0.0.0.0 mywebsite.com
私はすでにそこにあるすべてのものの後に新しいルールを置きます。
その後、mywebsite.comで開発サイトにアクセスし、Googleデベロッパーコンソールに正しいリダイレクトURLを入力できます。
開発サーバーのIPアドレスを/ etc/hostsのdev.example.comにマッピングするだけです。
重要なのは、ローカル環境でhttps
URLを使用することです。
OSXでは、ローカルhttps証明書をインストールできます: https://github.com/FiloSottile/mkcert
またはLaravel Valet。
したがって、新しいlocalhost URLは次のようになります:https://mywebsite.local
次に、このhttps
コールバックをGoogleに保存します。私のコンピューターで動作します
here の説明に従って、ngrokを使用してローカルホストを公開サイトにトンネルできます。
私の経験では、パブリックトップレベルドメイン(私は.barを使用)でlocalhostまたはURLを使用する必要があり、すべてのリダイレクトURLはhttpsである必要があります(Googleアプリを確認したい場合-シート/ドライブAPIに必要)