有没有办法以编程方式将多个有效的 OAuth 重定向 Uri 添加到您的 Facebook 应用程序?

Is there a way to add multiple valid OAuth Redirect Uri's to your Facebook App programmatically?

我正在创建一个允许用户连接 his/her Facebook 帐户的 WordPress 插件,并且在我的 Facebook 应用程序设置中,我指定了重定向 URI,但是当插件安装在其他域上时,我收到错误消息“应用程序配置不允许给定 URL...等等。”。 现在,我希望每次有新用户安装插件时,我都想获取域名并以编程方式将其添加到我的 Facebook 应用程序的有效 OAuth 重定向 URI。这可能吗?

由于您认为我对您在 FB 开发者论坛上的问题的回答有帮助,我将其复制到此处:


无法通过 API 为应用设置有效的 OAuth 重定向 URI。

这里基本上有两个选择:

  1. 使用您自己的域来处理登录部分。在登录对话框调用中将其用作 redirect_uri,当用户从登录对话框重定向回您的域时,将他们从那里引导回他们的域。在您的 redirect_uri 中将他们的域作为 URL 参数传递,或将其存储在您的会话中。

  2. 让用户通过他们自己的应用程序 ID 使用您的插件。如果您的插件不打算供 public 使用,而仅供网站所有者自己使用(将他们的博客条目发布到他们的 FB 页面上),他们甚至不必通过审查来获得权限您的插件需要批准。

第二个选项对您来说也是“更安全”的选项。如果有人通过您的插件发布垃圾邮件,它可能会在某一时刻阻止该应用程序。现在,如果你为所有用户使用一个应用程序,他们都会坐在同一条船上——一个行为不当,应用程序被阻止,所有通过它发布的内容都会消失(也许只是暂时的,如果你能在上诉程序,否则永远。)这意味着您的用户会提出很多愤怒的支持请求……

如果每个人都使用您的插件和他们自己的应用程序 ID – 那么他们只会在垃圾邮件时被阻止,其他人可以继续使用他们自己的应用程序使用您的插件。