2011-12-04 5 views
1

自分のサイトのFacebook認証を設定しました。私は、「サインインフェイスブックで」それは、次のURLに私をスローをクリックfacebookで認証すると、redirect_uriとしてexample.comを取得するのはなぜですか?

https://graph.facebook.com/oauth/authorize?redirect_uri=http%3A%2F%2Fexample.com%2Fla_facebook%2Fcallback&display=page&client_id=126197457491070 

REDIRECT_URLは明らかに正しいか、許可されていない、「example.com」です。

しかし、私のコードや認証パッケージでは、私はexample.comを使用していますが、これはFacebookで生成する必要がありますか?どこで変更できますか?なぜFacebookやFacebookのアプリ設定で設定したドメインやウェブサイトと同じではないのですか?

私はそのせいでREDIRECT_URLの次のエラーを取得する:

{ 
    "error": { 
     "message": "Invalid redirect_uri: Given URL is not permitted by 
     the application configuration.", 
     "type": "OAuthException" 
    } 
} 

私はHerokuのではDjangoを使用してジャンゴ - ラ - のFacebook(HTTPSよ:// github.com/cartwheelweb/django-la- facebook)

答えて

1

あなたがFacebookから認証に使用しているDjangoのアプリのthe codeを見れば、あなたはこのような何かわかりますはBurhanが指摘したように、デフォルトのcontrib.sitesドメインとして使用されている

def callback_url(self): 
     """ 
current site id 
grab base site url 
grab callback url 
return base and callback url 
""" 

     current_site = Site.objects.get(pk=settings.SITE_ID) 
     # @@@ http fix 
     base_url = "http://%s" % current_site.domain 
     callback_url = reverse("la_facebook_callback") 
     return "%s%s" % (base_url, callback_url) 

をリダイレクトuriのベースであるため、実際のドメインに修正する必要があります。

2

django.contrib.sitesフレームワークのデフォルトサイトはexample.comです。あなたはデフォルトのadminかdjangoシェルから変更することができます。

サイトフレームワークの詳細については、the documentationを参照してください。

+0

ありがとうございました!一定! – Riku

関連する問題