【问题标题】:Facebook server-side authentication: I cannot display an OAuth dialog as a popup instead as a pageFacebook 服务器端身份验证:我无法将 OAuth 对话框显示为弹出窗口,而是显示为页面
【发布时间】:2012-03-28 07:12:01
【问题描述】:

我正在使用服务器端 Facebook 身份验证。因此,首先,应用程序将客户端重定向到https://www.facebook.com/dialog/oauth?...URL,并且在此 URL 中有字符串“display=popup”作为参数,但是当应用程序重定向客户端时,对话框显示为页面,所以没有打开任何窗口。

【问题讨论】:

    标签: facebook authentication oauth dialog popup


    【解决方案1】:

    服务器端只能重定向到URL;它无法告诉客户端在哪个窗口中打开/显示 URL。

    Facebook 的客户端身份验证负责在弹出窗口中显示 OAuth 对话框。如果您必须使用服务器端身份验证,则需要自己在弹出窗口中打开 URL:

    window.open('URL_THAT_REDIRECTS_TO_OAUTH_DIALOG', ...)
    

    但是您还需要自己设置窗口尺寸(宽度/高度)(通过在window.open() 中指定它们)。

    【讨论】:

      【解决方案2】:

      前面的答案是正确的。虽然记得使用 '_blank' 来弹出一个实际的弹出窗口:

      window.open('/fblogin', '_blank','location=yes, scrollbars=yes, width=640, height=359', true);
      

      这些也是当前 OAuth 登录窗口的大小。

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2012-06-05
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2018-09-14
        • 1970-01-01
        相关资源
        最近更新 更多