带有 Facebook 登录的 Windows 8 应用程序返回错误“应用程序配置不允许给定 URL”

Posted

技术标签:

【中文标题】带有 Facebook 登录的 Windows 8 应用程序返回错误“应用程序配置不允许给定 URL”【英文标题】:Windows 8 App with Facebook Login returning error "Given URL is not allowed by the Application configuration" 【发布时间】:2014-01-15 02:04:31 【问题描述】:

我正在使用 WinJS 和 Facebook 登录创建一个 Windows 应用商店应用程序。我已经使用 Facebook Developer site for Windows 8 (https://developers.facebook.com/docs/facebook-login/manually-build-a-login-flow/) 中描述的推荐方法实现了 Facebook 登录。

我还通过在 Windows 应用商店 ID 字段中输入我的包安全标识符 (SID) 来更新我在 Facebook 中的应用程序设置。

问题是当我启动应用程序并单击登录时,我收到以下消息:

“应用程序配置不允许给定 URL。:应用程序的设置不允许一个或多个给定 URL。它必须与网站 URL 或画布 URL 匹配,或者域必须是其中之一的子域应用程序的域。”

我在使用 Facebook 登录创建网站时遇到了这个问题,这只是将正确的域添加到 Facebook 应用程序设置的问题。但是由于这是一个原生应用程序,所以没有我可以使用的实际域吗?

以下是单击“登录”按钮时执行的代码示例。

var doLogin = function()

        var requestUri = new Windows.Foundation.Uri("https://www.facebook.com/dialog/oauth?client_id=[[FACEBOOK_APP_ID]]&display=popup&response_type=token&redirect_uri=ms-app://[[SID_ENTERED_HERE]]");
        var options =  scope: 'email,publish_actions,user_location' 

        Windows.Security.Authentication.Web.WebAuthenticationBroker.authenticateAsync(
          options,
          requestUri)
          .done(function (response) 
               // handle response
          
        );

任何帮助将不胜感激!谢谢!

【问题讨论】:

您找到解决方案了吗? 【参考方案1】:

您需要告诉 Facebook 您的应用程序的 SID。您可以在 Facebook 应用程序开发人员页面上执行此操作。单击应用程序,然后选择基本。在基本部分下方,单击“添加平台”,然后选择 Windows 应用程序。然后您将看到一个对话框,您可以在其中输入“Windows Store ID”。一旦我把我的 SID 放在这里并点击保存,WebAuthenticationBroker 就开始工作了。

(我还在“高级”下启用了“本机或桌面应用程序”切换,但我不知道这是否与它开始工作有关。)

【讨论】:

以上是关于带有 Facebook 登录的 Windows 8 应用程序返回错误“应用程序配置不允许给定 URL”的主要内容,如果未能解决你的问题,请参考以下文章

使用 C# 和 XAML 为 Windows 8.1 创建 facebook 应用程序时出现异常

带有 Facebook 登录的 IOS 应用程序卡在登录页面

带有 Facebook 登录示例的 java.lang.RuntimeException

cordova-plugin-facebook4 - 带有“未登录:您尚未登录。请登录并重试”的空白对话框

如果“SignInWithFacebook”不再可用,我该如何创建一个带有firebase的facebook登录页面?

带有 Facebook 单点登录的 iOS 应用程序中的“点赞”按钮