回答:
編集:2-15-2012これは、localhost WebサイトでFB認証を使用する方法です。
2つ目のFacebookアプリをセットアップする方がスケーラブルで便利だと思います。MyAppを構築している場合は、MyApp-devという名前の2つ目を作成します。
Website
「アプリケーションとFacebookの統合方法を選択する」の下のチェックボックスをクリックします(最新のFacebookバージョンでは、「設定」>「基本」>「プラットフォームを追加」-「Webサイトを選択してください」)。Rails.env == '開発'の場合|| Rails.env == 'test' Rails.application.config.middleware.use OmniAuth :: Builder do プロバイダー:facebook、 'DEV_APP_ID'、 'DEV_APP_SECRET' 終わり そうしないと #生産 Rails.application.config.middleware.use OmniAuth :: Builder do プロバイダー:facebook、「PRODUCTION_APP_ID」、「PRODUCTION_APP_SECRET」 終わり 終わり
一度セットアップすると、同僚や他のマシンには追加のセットアップが不要になるため、この方法を選択します。
もちろん、app_domainにlocalhost( "http"なし)のURLを追加し、次にsite_url http://localhost
(httpを使用)に追加することもできます。
更新
Facebookで少し変更します。アプリの設定に移動し、サイトのURLでhttp: //localhost
アプリドメインを追加して空のままにします。
これが私の設定で、PHP APIで正常に動作します。
アプリドメイン
http://localhost
サイトのURL
http://localhost:8082/
注:2012年の時点で、Facebookは戻りURLとして「localhost」の登録を許可しています。他のプロバイダー(Microsoftプロバイダーなど)についても、同様の回避策が必要な場合があります。
Facebookに登録されている実際のドメイン名(my.really.own.domain.comなど)が必要な場合は、このドメインへのリクエストをローカルでマシンにリダイレクトできます。どのOSでもすぐに使用できる最も簡単な方法は、「hosts」ファイルを変更してドメインを127.0.0.1にマップすることです(http://technet.microsoft.com/en-us/library/bb727005.aspx#EDAAおよびhttps:/を参照)。 /serverfault.com/questions/118290/cname-record-alias-in-windows-hosts-file)。
私は通常、Fiddlerを使用してそれを行います(WindowsでローカルIISを使用)-http ://www.fiddler2.com/Fiddler/Dev/ScriptSamples.aspのサンプルを参照してください。
if (oSession.HostnameIs("my.really.own.domain.com")) {
oSession.host="localhost:80";
}
アプローチのホストファイルアプローチは、着信URLがlocalhost / 12.7.0.1である必要があるため、Visual Studio Development Serverでは機能しません。ホストを上書きするために(またはIISエクスプレスを使用して)作業する必要がある場合-IIS7 ExpressでのFiddlerの使用
FacebookはFBML Facebookアプリケーションの「localhost」コールバックURLを許可しなくなりました
新しい開発センターにより、次のことがより簡単になりました。
1)アプリのドメインを空白のままにします。
2)[プラットフォームを追加]をクリックします
。3)サイトのURLは、ローカルホストの完全パスと同じにする必要があります。
4)変更を保存
回避策を発見しました:http://localtunnel.comを使用してローカルマシンにアクセスできるようにすることができます。リンクが一時的なドメインを指すように、アプリのコード/ htmlで使用される一部のURLを(一時的に)変更する必要がありますが、少なくともFacebookはマシンに到達できます。
アプリの基本設定(https://developers.facebook.com/apps)の[設定]-> [ 基本]-> [アプリをFacebookと統合する方法を選択...]をクリックします。
「サイトURL:」と「モバイルサイトURL:」を使用して、本番URLと開発URLをそれぞれ保持します。両方のサイトで認証が許可されます。私は認証にFacebookを使用しているだけなので、モバイルサイトのリダイレクト機能は必要ありません。通常、認証のテスト中に「モバイルサイトURL:」を「localhost:12345」サイトに変更し、完了したら通常に戻します。
有る !私のソリューションはアプリを作成するときに機能しますが、WebサイトでFacebookの認証を使用する必要があります。以下のこのソリューションは、FBページに統合されたアプリを作成する場合は必要ありません。
重要なのは、アプリのFacebook設定ページでドメインとして「localhost」を指定できないことです。セキュリティ上の理由?
OSX / Linux etc / hostsのホストファイルに移動し、次の行を追加する必要があります。127.0.0.1 dev.yourdomain.com
あなたが好きなものを置くドメイン。1つの間違いは、次の行を追加することです:localhost dev.yourdomain.com(少なくともosx Snow Leopardでは機能しません)。
次に、DNSキャッシュをクリアする必要があります。OSXの場合:端末でdscacheutil -flushcacheと入力します。最後に、オンラインのFacebook開発者Webサイトに戻り、アプリの構成ページで、ドメイン「dev.yourdomain.com」を追加できます。
Mamp、Easyphpなどのプログラムを使用する場合は、Apacheのポートが80であることを確認してください。
このソリューションはホストファイルも持っているため、Windowsで機能するはずです。それにもかかわらず、私がWindows 7でこのファイルを使用しないことを覚えている限り、このトリックはウィンドウにhostsファイルを使用させる方法を見つければ機能するはずです。
Facebook製品の「facebookログイン」を選択し、localhost urlを指定した場合でも、クライアントOAuthログイン、「Web OAuthログイン」、「組み込みブラウザーOAuthログイン」を有効にする必要があります。
これは、HTTPS要件の後でも2018年6月に機能します。テストアプリはhttpsを必要としないようです:
テストアプリを作成:https : //developers.facebook.com/docs/apps/test-apps/
次に、テストアプリ内で、このビデオの簡単な手順に従います。https: //www.youtube.com/watch?v = 7DuRvf7Jtkg
Visual Studio開発用Webサーバーを使用してアプリケーションを開発できるはずです。http://www.facebook.com/developers/で新しいFaceBookアプリケーションを開始します。次に、サイトのURLとキャンバスのURLの設定を、Webサイトの実行中のインスタンスに設定します。例:http:// localhost:1062 /
FaceBookを使い始めるときに役立つはずのリンクをいくつか紹介します。
お役に立てれば。
これを試して - -
https://www.facebook.com/help/community/question/?id=589302607826562
1-[アプリ]をクリックして、アプリを選択します。
2-画面の左側にある[設定]ボタンをクリックします。
3-基本設定で、設定の構成の下にある[プラットフォームの追加]ボタンをクリックします。
4-プラットフォームダイアログで[Webサイト]を選択します。
5-URLを入力します(localhostはここで機能します)。
6-[App Domains]テキスト入力で、URLのドメインと一致するドメインを追加します。
7-設定を保存します。
次のようにアプリを登録したとします。
app.domain.com
/ etc / hostsファイルを追加して、
127.0.0.1 dev01.app.domain.com
次に、Apache構成を変更します。
ServerName dev01.app.domain.com
Apacheを再起動します。
一部の呼び出しでXMLパラメーターとして使用するには、URLを変数に配置する必要があります。
<fb:login-button registration-url="http://<?=$URL?>/register" />
上位投票の回答にコメントするだけの十分な信用はありませんが、少なくとも私のレール環境(4を実行)では、レールsはであり http://localhost:3000
、ではありません http://www.localhost:3000
。に変更したところhttp://localhost:3000
、問題なく動作しました。hostsファイルを編集する必要はありません。
アプリケーションはlocalhost:3000で問題なく実行されます。アプリケーションが本番モードの場合にアプリケーションが稼働するhttpsアドレスを指定する必要があります。
オプション2はURLを提供するか、サンプルアプリケーションをプロダクションモードで使用できるheroku Webサイトです。
最新の更新:開発でテストしている場合は、URLを指定する必要はありません。フィールドは空のままにできます。アプリが開発モードであることを確認します。そうでない場合は、ステータスをライブからオフにします。
サイトのURL、アプリのドメイン、有効なリダイレクトOAuth URIを提供する必要はありません。