如何使用phpSDK在弹出窗口中显示facebook授权窗口


How to display facebook authorization window in a popup using php SDK?

我想在弹出窗口中显示授权窗口,但这似乎不起作用

getLoginUrl(array('scope' => 'read_stream,publish_stream','display' => 'popup'));

仅仅使用php SDK有可能吗?

只有客户端决定页面的加载位置(例如:自己的窗口、父窗口、顶部窗口、弹出窗口),服务器端无法控制或知道这一点。

要打开弹出窗口,您必须调用window.open()(查找)。如果您确实想进行服务器端oauth,您可以在php中使用getLoginUrl()并将其存储在页面中(javascript var/data-attribute等),然后在适当的时间调用window.open以在弹出窗口中打开登录url。

然而,你不能随时打开一个弹出窗口——你会被阻止的。因此,您需要添加一个"登录"链接供用户点击,并为该点击添加一个将打开弹出窗口的事件处理程序。