1

かなり長い間 Google で django-social-auth を使用してきましたが、Facebook で問題が発生しています。

/login/facebook/ リンクをクリックすると、Facebook 認証ページに移動するところまで来ました。次に「アプリに移動」をクリックすると、ホームページにリダイレクトされますが、ログインもユーザーの作成も行われず、URL の後ろに奇妙な「# = 」が表示されます。

それを読んで、ここhttps://developers.facebook.com/blog/post/552/、およびここhttps://github.com/omab/django-social-auth/issues/199、それはリダイレクト uri が定義されていない場合に発生します。ただし、Facebook アプリの設定では、次のようになっています (サイトを example.com に置き換えます):
- アプリの名前空間: "example"
- サイト URL: "http://example.com/complete/facebook/"
- サイト ドメイン: "example.com"
- サンドボックス モード: "オン"
- 承認後のリダイレクト URL: "http://apps.facebook.com/example/"
- 承認解除 URL: "http://www.example.com/"
- 認証後の URL: "http://example.com/complete/facebook/"

django-social-auth が facebook に送信しているリクエストは (私の情報を再度置き換えます): "https://www.facebook.com/dialog/oauth?scope=email&state= * &redirect_uri=http%3A%2F%2Fexample. com%2Fcomplete%2Ffacebook%2F%3Fredirect_state%3D* **&client_id= * "

/complete/facebook/ はドキュメントにあるものであり、Google は /complete/google/ として機能します

ここで何が欠けていますか?

4

1 に答える 1

1

私の基本的な問題は urls.py にありました。残念ながら「/complete/facebook/」もキャッチするキャッチオール URL がありました。URLに「-」があったため、Googleは引っかかりませんでした。
関係ないかもしれませんが、deauthorize/post-authorize の URL も削除し、サイトの URL をhttp://www.example.com/に変更しました (www に注意してください)。「#_=_」は、http://developers.facebook.com/bugs/318390728250352?browse= search_5040e171d3ac02944460198
によると進行中のバグのように見えますが、手動で削除する必要があります

于 2012-10-03T23:54:08.463 に答える