为facebook OAuth2指定多个重定向URI

为facebook OAuth2指定多个重定向URI,facebook,oauth,oauth-2.0,facebook-oauth,Facebook,Oauth,Oauth 2.0,Facebook Oauth,我的web应用程序部署到生产站点,但我还需要执行本地开发。此外,我有两个测试服务器,在那里我执行不同的测试活动。我想为FacebookOAuth2指定所有这些URI。使用GoogleOAuth2没有问题:我可以根据需要指定任意多个重定向URI Facebook有可能做到这一点吗?怎么用?我正在使用“带Facebook登录的网站”选项与Facebook集成 目前我得到: { error: { message: "Invalid redirect_uri: Given URL

我的web应用程序部署到生产站点,但我还需要执行本地开发。此外,我有两个测试服务器,在那里我执行不同的测试活动。我想为FacebookOAuth2指定所有这些URI。使用GoogleOAuth2没有问题:我可以根据需要指定任意多个重定向URI

Facebook有可能做到这一点吗?怎么用?我正在使用“带Facebook登录的网站”选项与Facebook集成

目前我得到:

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

您将不得不根据您的需求为不同的用例创建不同的应用程序。这是一个奇怪的限制,你将不得不处理


虽然与此无关,但Heroku(Facebook的合作伙伴云服务提供商)建议在开发应用程序的同时也进行同样的工作。

我不确定他们是什么时候添加的,但我刚刚在我的Facebook应用程序的“高级”设置中发现了一个“有效的OAuth重定向URI”字段。我只是把
http://localhost
,它似乎允许重定向到本地主机上的任何URI。不再有重复的应用程序

更多信息,请访问:-包含:“如果可能,请指定OAuth重定向URL的白名单。指定一组详尽的应用程序URL,这些URL是应用程序从OAuth流返回访问令牌和代码的唯一有效重定向URL。此设置位于设置>高级>安全部分。如果将此设置保留为空,则应用程序域中的任何URL都可能接收OAuth访问令牌–如果应用程序域存在任何打开的重定向或XSS漏洞,则应用程序容易受到访问令牌盗窃的攻击。“我可以证实,这对我也有效。通过使用此新设置,您现在可以对live和localhost URL使用相同的facebook应用程序。我正在寻找一种方法,以便禁用“有效的OAuth重定向URI”功能,以便facebook允许我在使用facebook应用程序集成facebook登录功能时使用任何域名。此答案可能已经过时,@ben关于“有效的OAuth重定向URI”的回答是有效的(有关更详细的说明,请参阅该回答中的第一条注释)。