2012-12-14 24 views
0

我正在使用django-social-auth爲我的網站的Facebook登錄認證用戶。用django-social-auth發出的OAuthException異常

<a href="{% url socialauth_begin 'facebook' %}?redirect_uri={{SITE_URL}}complete/facebook/"> 

這正確導致我的身份驗證對話框,但是當我點擊對話框我從社會AUTH這個錯誤在「轉到應用程序」:

Request Method: GET 
Request URL: http://[site_url]/complete/facebook/?state=DHlD9efEDau286xRGn2HtVpZ9AbooD3y&code=AQCACZRE3WYGMyBSII1eD-H8Sl8yDUtL6VoZ4qJPKSQ_NDBAoE_6JE7-4Ef353utpAygCZVJMUKiLNs_evC-y2oezOKRsH_njtFZW4FwPE2XoaFm14sdbtUkj1QsqivY6DSpGpsmTNCCs3twYxx-6_C-e1OWEcnd4x6SoBg59LmCUsWhocu739h_ppdLRR_wPjY 
Django Version: 1.3.1 
Exception Type: AuthFailed 
Exception Value:  
Authentication failed: There was an error authenticating the app 
Exception Location: /app/.heroku/src/social-auth/social_auth/backends/facebook.py in auth_complete, line 131Request Method: GET 
Request URL: http://[site_url]/complete/facebook/?state=DHlD9efEDau286xRGn2HtVpZ9AbooD3y&code=AQCACZRE3WYGMyBSII1eD-H8Sl8yDUtL6VoZ4qJPKSQ_NDBAoE_6JE7-4Ef353utpAygCZVJMUKiLNs_evC-y2oezOKRsH_njtFZW4FwPE2XoaFm14sdbtUkj1QsqivY6DSpGpsmTNCCs3twYxx-6_C-e1OWEcnd4x6SoBg59LmCUsWhocu739h_ppdLRR_wPjY 

我要求文件指向django-social-auth的分叉版本,所以我可以在錯誤周圍添加一些打印語句。失敗似乎在打電話給

https://graph.facebook.com/oauth/access_token?code=AQCc6tIfxJTQN64GGQsDVbT4BCK1hYGypw2oMFQjjMQf-kfJqrWtI-vGe78fJJJHTL6w5yuau90vQu8msVGDpZh30HgUYkwdXhAKJcC9MCf8h6bp1e23wxkkMzP5eaT2j7xOCorn-KgeRv-ZJA40U87GDx1_592amAlSemS4zhXaoAv7JWRHl9NzBFtJ6cuGdbg&client_secret=[app_secret]&redirect_uri=http%3A%2F%2F[site_url]%2Fcomplete%2Ffacebook%2F%3Fredirect_state%3DDHlD9efEDau286xRGn2HtVpZ9AbooD3y&client_id=[app_id] 

我從得到的錯誤之後發生的

{ 
     "error": { 
     "message": "Error validating verification code. Please make sure your redirect_uri is identical to the one you used in the OAuth dialog request", 
     "type": "OAuthException", 
     "code": 100 
    } 
} 

但是如果我斜線添加到URL的最後,我得到這個錯誤:

{ 
    "error": { 
    "message": "Error validating application. Invalid application ID.", 
    "type": "OAuthException", 
    "code": 101 
    } 
} 

我向你保證,APP_ID是正確的

我知道這是一個漫長的閱讀,但不任何人有任何建議如何解決這個問題?

+1

爲什麼你將'redirect_uri''附加到''socialauth_begin'' URL? – omab

+0

這是一個非常好的問題。我的同事寫道,不是我。我刪除了'redirect_uri',但仍然有同樣的問題。謝謝你指出,雖然 – mea36

回答

0

@omab是正確的,我的問題是附上redirect_uri。除此之外,我編輯了django-social-auth來爲url添加一個反斜槓。這也是不正確的。