OAuthボタンをテストしようとしていますが、すべて(Facebook、Twitter、LinkedIn)にエラーが表示され、ローカルURLからはテストまたは使用できないことを示しているようです。
すべての人が非開発および非ローカル接続環境を必要としているように見える場合、人々は通常、OAuthのものを使用して開発でどのように作業しますか?
2016年10月の更新:今すぐ簡単:常にを指すlvh.me127.0.0.1
を使用しますが、呼び出す必要があるたびに、これが引き続き当てはまることを確認してください(ドメインが期限切れになるか、乗っ取られる可能性があり、DNSポイズニングが常に懸念されるため) )。
前の回答:
localhost
コールバック要求はブラウザによって発行されるため、HTTPリダイレクト応答として、 127.0.0.1ではないドメインを指すように.hostsファイルまたは同等のものを設定できます。
たとえば、次のコールバックをTwitterに登録するとしますhttp://www.publicdomain.com/callback/
。www.publicdomain.com
ホストファイルで127.0.0.1を指していること、およびTwitterがwww.publicdomain.comでDNSルックアップを正常に実行できることを確認してください。つまり、ドメインが存在する必要があり、要求された場合、特定のコールバックはおそらく200ステータスメッセージを返すはずです。
編集:
次の記事を読んだばかりです:http://www.tonyamoyal.com/2009/08/17/how-to-quickly-set-up-a-test-for-twitter-oauth-authentication-from-your-local -この質問からリンクされたマシン: Twitter oAuthcallbackUrl -localhostdevelopment。
記事を引用するには:
URL短縮サービスbit.lyをご利用いただけます。[http // localhost:8080 /twitter_callbackなどのlocalhostURL]を短縮し、短縮されたURLをTwitterアプリのコールバックとして登録するだけです。
これは、.hostsファイルをいじるよりも簡単なはずです。
現在(2014年8月)bit.lyはローカルホストへのリンク転送を許可していないことに注意してください。ただし、Googleリンク短縮サービスは機能します。
PS編集:(2018年11月):Googleリンク短縮サービスはローカルホストまたは127.0.0.1のサポートを停止しました。
または、https://tolocalhost.com/を使用して、コールバックをローカルサイトにリダイレクトする方法を構成できます。ホスト名を指定できます(localhostと異なる場合、つまりyourapp.localとポート番号)。開発目的のみ。
ngrokを使用することもできます:https ://ngrok.com/ 。ローカルホストでパブリックサーバーを実行するために常に使用しています。お役に立てれば。
独自のカスタムドメインを無料で提供するもう1つのオプションは、servo.netとhttps://localtunnel.github.io/www/です。
Macユーザーの場合は、ファイルを編集し/etc/hosts
ます。sudo vi /etc/hosts
読み取り専用の場合は使用する必要があります。承認後、oauthサーバーはコールバックURLを送信し、そのコールバックURLはローカルブラウザーでレンダリングされるため、ローカルDNS設定は機能します。
127.0.0.1 mylocal.com
ローカルドメインをに設定しますmywebsite.example.com
(そしてそれをローカルホストにリダイレクトします)-通常はを使用しますがmywebsite.dev
。これにより、堅牢な自動テストが可能になります。
承認.test
および許可さ.dev
れていませんが、承認example.com
はgoogleoauth2で許可されています。
(hostsファイル(unix / linux:)で任意のドメインをlocalhostにリダイレクトできます/etc/hosts
)
なぜmywebsite.example.com
ですか?は予約済みのドメイン名だ
からです。example.com
それで
not-redirected-by-mistake.example.com
。WindowsまたはLinuxでhostsファイルを編集できますWindows:C:\ Windows \ System32 \ Drivers \ etc \ hosts Linux:/ etc / hosts
ローカルホストの名前解決はDNS自体の中で処理されます。
127.0.0.1 mywebsite.com
テストが終了したら、追加した行にコメントを付けて無効にします
127.0.0.1 mywebsite.com
http://webporject.dev
Googleでは、ローカルホストでor.loc
と.etcを使用して認証APIをテストすることはできません。また、ローカルURL( http://webporject.dev
)を短縮するGoogleの短いリンクも許可されていませんbit.ly
:)。Googleは開始するURLのみを受け入れますhttp://localhost/
...
google auth apiをテストする場合は、次の手順に従う必要があります...
使用する場合はopenserver
、[設定]パネルに移動しaliases tab
、ドロップダウンをクリックしてクリックし、それを見つけlocalhost
て選択します。
ここで、最初のドロップダウンの横にある次のドロップダウンをクリックして、ローカルWebプロジェクトのルートフォルダーを選択する必要があります。
と呼ばれるボタンをクリックして、add
openseverを再起動します。
これで、このリンクで利用可能なローカルプロジェクトhttp://localhost/
も、このローカルURLをgoogleauthapiに貼り付けることができredirect url
ます...
固定URLを埋め込みローカルホストドメインに自動的に変換するxip.ioを見つけました。
たとえば、ローカルホストサーバーがで実行されているとします。このサーバーにアクセスする127.0.0.1:8000
には、に移動できます。http://www.127.0.0.1.xip.io:5555/
次に、このアドレスをFacebookまたはGoogleのOauth構成に追加できます。
http://tolocalhost.comがクエリパラメータを転送しないなど、他の回答で言及されているツールでいくつかの問題が発生しました(言うまでもなく、最初にページにアクセスして構成する必要があります。https://thomasmcdonald.githubの場合と同じです。 .io / Localhost-uri-Redirector /)とhttp://lvh.meは、ローカルマシンでプロキシを実行していて、 http:// mywebsiteのようなプライベートURLを指すようにパブリックURLが必要なため、役に立ちません。 dev。
だから私は自分のニーズを満たし、あなたのニーズを満たすかもしれない自分のツールを作りました:
例:
https://redirectmeto.com/https://www.google.com/search?q=puppies
http://redirectmeto.com/http://localhost:4000/oauth/authorize
この回答はGoogleOAuthにのみ適用されます
それは実際には非常に単純で、私はそれが私のために働いたことに驚いています(私はまだ私の目が見ているものに懐疑的です)。
localhost
ここに表示されているように、ローカルホストはほとんどのルールの例外であるため、GoogleDeveloperConsoleで信頼できるドメインとして追加できるようです。
これは、このページのOAuth2.0クライアントIDで実行できます。[編集]をクリックしてから、または同様のポートを追加し、[http://localhost:8000
保存]をクリックします。
入力ボックスにhttp
またはを含めることが重要です。https
HTTPまたはHTTPS?
Googleがhttpを許可していることにもう一度驚いていますが、アプリケーションが本番環境にリリースされている場合は、セキュリティ上の小さなリスクがあることに注意してください。
特に慎重になりたい場合は、httpsを使用することを選択できます。これには、ローカルホストサーバーでSSL証明書を設定する必要があります。
SSL証明書は有効である必要がないため、これは思ったよりも簡単です。多くのhttpサーバーはあなたにこのオプションを与えるべきです。大きな赤い警告をバイパスするには、ブラウザの[続行]ボタンをクリックする必要があります。
これはhttpよりも安全です。a)ハッカーが何かフィッシュを試みた場合にユーザーに大きな赤い警告が表示されるか、b)ユーザーが意図的にセルフホストSSL証明書を設定した場合にのみこの警告が表示されないためです。 、その場合、彼らはおそらく彼らが何をしているのかを知っています(ウイルスは技術的にもこれを行うことができると思いますが、その段階で彼らはすでにユーザーのシステムを十分に制御して、彼らが望むことを何でもすることができます)。
もう1つの価値のあるオプションは、https://github.com/ThomasMcDonald/Localhost-uri-Redirectorです。これは、UIで構成したホストとポートにリダイレクトする非常に単純なhtmlページです。
このページはGithubhttps://thomasmcdonald.github.io/Localhost-uri-Redirectorでホストされているため、これをOAuth2リダイレクトURLとして使用し、UIでターゲットホストとポートを構成すると、アプリにリダイレクトされます。
GoogleOAuthを参照する
OAuthクライアントタブで
(http://localhost:3000)
を承認されたJavaScriptオリジン URIに追加しますOAuth同意画面で
mywebsite.com
に追加WindowsまたはLinuxでhostsファイルを編集しWindows C:\Windows\System32\Drivers\etc\hosts
Linux : /etc/hosts
て追加します127.0.0.1 mywebsite.com
(他に127.0.0.1がある場合は、NBコメントアウトします)