【问题标题】:OAuthException Facebook and OSQAOAuthException Facebook 和 OSQA
【发布时间】:2012-08-06 22:33:17
【问题描述】:

我正在使用 OSQA,我只是尝试使用 Facebook 登录(平台代码没有任何更改),仅设置“应用程序密码”和“应用程序 ID”。

我的 Facebook 应用设置:

Site URL: http://localhost:8080/osqa/
Canvas URL: http://localhost:8080/osqa/osqa/account/facebook/done/

我遇到这个错误:

{
   "error": {
      "message": "Invalid redirect_uri: Given URL is not allowed by the Application configuration.",
      "type": "OAuthException",
      "code": 191
   }
}

这是带有redirect_uri的网址

https://graph.facebook.com/oauth/authorize?scope=email&redirect_uri=http%3A%2F%2F127.0.0.1%3A8080%2Fosqa%2Fosqa%2Faccount%2Ffacebook%2Fdone%2F&client_id=***

我在 stackoverflow 和其他论坛上阅读了很多关于这个问题的帖子,我知道有一个简单的解决方案,但还没有弄清楚。

【问题讨论】:

    标签: facebook-graph-api oauth-2.0 osqa


    【解决方案1】:

    您的 URL 中的重定向转换为:

    redirect_uri=http://127.0.0.1:8080/osqa/osqa/account/facebook/done/
    

    Facebook 只是检查字符串并发现127.0.0.1localhost 不同。因此,在您的应用设置中替换它,重定向应该可以工作。

    【讨论】:

    • 它给了我一个带有这个 URL “127.0.0.1:8080/osqa/osqa/account/facebook/done/?code=***”的 404 我删除了一个 osqa/ 的出现并且效果很好。现在我必须弄清楚如何解决新问题
    • settings_local.py 中检查您的APP_URL 设置。关注上面的评论:# This shouldn't be followed by a trailing slash.
    • APP_URL = '127.0.0.1:8080/osqa' 如果我删除 "/osqa" 我会得到一个无用的 URL "127.0.0.1:8080/account/facebook/done/?code=***" 也许是其他地方的错误?
    • 是的,这可能是一个错误。你可以尝试修复它,或者作为一个肮脏的解决方法硬编码你的redirect_uri 那里;)因为你是APP_URL 只包含一个/osqarequest.path 中可能有一个/osqa
    • 这是第二个问题的解决方案;)meta.osqa.net/questions/11746/…
    猜你喜欢
    • 2012-02-25
    • 2017-08-26
    • 2012-01-27
    • 1970-01-01
    • 2016-12-13
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多