我正在创建一个WordPress插件,让用户连接他/她的Facebook帐户,并在我的Facebook应用程序设置中,我指定了重定向URI,但是当插件安装在其他域时,我得到一个错误"给定URL不允许应用程序配置…等干净。现在,我想每次如果有一个新用户安装插件,我想获得域名,并以编程方式将其添加到我的Facebook应用程序的有效OAuth重定向uri。这可能吗?
既然你认为我对你在FB开发者组上的问题的回答很有帮助,我将它复制到这里:
不可能通过API为应用程序设置有效的OAuth重定向uri。
这里基本上有两个选项:
-
使用自己的域处理登录部分。将其用作登录对话框调用中的redirect_uri,当用户从登录对话框重定向回您的域时,将他们从那里引导回他们的域。在你的redirect_uri中传递他们的域名作为URL参数,或者将其存储在你的会话中。
-
让用户使用你的插件和他们自己的应用id。如果你的插件不是为了让公众使用,而是为了让网站所有者自己使用(在他们的FB页面上发布他们的博客条目),他们甚至不需要通过审查来获得你的插件请求批准的权限。
第二种选择对你来说也是"更安全"的。如果有人通过你的插件发布垃圾信息,你的应用可能会被屏蔽。现在,如果你为所有用户使用同一款应用,他们就会面临同样的问题——一个用户行为不当,应用就会被屏蔽,通过该应用发布的所有内容就会消失(也许只是暂时的,如果你能在申诉过程中解除应用的屏蔽,否则就会永远消失)。这将意味着你的用户会有很多愤怒的支持请求…
如果每个人都用他们自己的应用id来使用你的插件,那么他们只会在垃圾邮件时被屏蔽,而其他人可以继续使用他们自己的应用来使用你的插件。