【问题标题】:Facebook Auth Dialog: Developer warning concerning the use of "display" type "popup"Facebook Auth Dialog:关于使用“显示”类型“弹出”的开发人员警告
【发布时间】:2013-05-08 16:38:27
【问题描述】:

从今天开始,我们会在身份验证对话框中收到开发者警告,其中包含以下消息:

您在大型浏览器窗口或选项卡中使用“弹出式”显示类型。为了获得更好的用户体验,请使用我们的 JavaScript SDK 显示此对话框,而无需指定显式显示类型。 SDK 将为每个环境选择最佳显示类型。或者,如果您有阻止您使用 SDK 的特殊要求,请在 window.open() 调用上设置高度和宽度以正确调整此对话框的大小。此消息仅对您的应用程序的开发人员可见。

我们有以下情况:

  • 我们使用 javascript 打开一个新的弹出窗口
  • 弹窗的src是用Facebook的PHP-SDK方法getLoginUrl设置的
  • 弹出窗口本身的大小为 400 像素 x 580 像素

PHP-SDK 本身在其自己的代码中引用了“display=popup”的正确使用:

如果您在 JavaScript 中将生成的 URL 与 window.open() 调用一起使用,则可以将 display=popup 作为 $params 的一部分传入。

JS-SDK documentation 表示,打开的弹出窗口的最大尺寸应为 400x580:

用于不大于 400 x 580 像素的浏览器弹出窗口。使用此显示类型为用户维护上下文,而无需执行整页重定向。

所以,总结一下:根据文档,上面的实现应该没问题。是否还有其他人有此警告或解决方案?

【问题讨论】:

  • “弹出窗口本身的大小为 400 像素 x 580 像素” - 您的屏幕截图显示的大小为 446x630 像素……
  • 我会尝试 399x579。考虑到这是对开发人员的建议,用户不会看到警告。另外,不要 100% 依赖文档,这可能是错误的:-/
  • 这里还有another caveat。引用 Jeff 的话:只有当您使用注册此 Facebook 应用程序的人的 Facebook 凭据登录时,您才会看到此警报。

标签: javascript facebook facebook-javascript-sdk facebook-php-sdk


【解决方案1】:

也许您应该切换到 FB JS SDK 和 FB.login() 方法?它始终提供最佳的用户体验。

https://developers.facebook.com/docs/reference/javascript/FB.login/

【讨论】:

  • 当*链接更改时*将变为无效:)
【解决方案2】:

JS-SDK 文档说浏览器弹出窗口应该“不大于 400 像素乘 580 像素”。他们没有指定的是它们的意思是 400px 高 x 580px 宽。

我在 275 高 x 875 宽的弹出式身份验证对话框中看到了开发人员警告。我在 400 高 x 580 宽的弹出窗口中看不到警告。

您的图片表明您的弹出窗口是 630 高 x 446 宽。对规范的任何阅读都太大了。

【讨论】:

  • 感谢您的回答。将我的弹出窗口大小更改为 580x400 并且警告消失了。 (实际上,上传的图片是 630 x 446 - 但只是由于调整大小,facebook 本身正在做。在我的代码本身中,尺寸是 400x580)。
  • 是的。你是如何改变弹出窗口大小的?
  • @Chris 您可以按照您最初设置的方式更改弹出窗口的大小。 OP 问题中的文档还解释了如何:“在不指定显式显示类型的情况下使用 [Facebook 的] JavaScript SDK 显示此对话框”或“在 window.open() 调用上设置高度和宽度以正确调整此对话框的大小”。跨度>
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2020-02-09
  • 2014-07-03
  • 1970-01-01
  • 1970-01-01
  • 2011-04-27
相关资源
最近更新 更多