我们正在使用 coova chili 和 Javascript Facebook SDK 设置一个用作 wi-fi 热点的 Web 应用程序。
该应用程序有一个“使用 facebook 登录”按钮,一旦单击该按钮,就会调用 FB.login() 函数,该函数会打开一个弹出窗口,用户可以在其中插入他的凭据并登录。
此解决方案在桌面浏览器中正常工作,但在移动设备中不工作。
这些是我遇到的问题:
Android 设备 - 当我连接到 wifi 网络时,系统会提示“登录到 wifi 网络”的通知。单击后,强制页面将正确打开。但是当我单击 fb 登录按钮时,我被重定向到正确的 URL“ http://m.facebook.com/v2.8/auth ...”,但随后窗口冻结,我只能看到一个wsod。
IOS 设备 - 和以前一样,cna 触发器,重定向到 fb 登录页面有效,但是一旦我插入我的凭据,我唯一能看到的是一个 wsod。
这两个问题都可以通过在热点围墙花园中包含 apple.com、google.com 和其他用于身份验证的域来绕过,然后用户可以使用设备的浏览器 - Safari 或 Chrome 登录网络,它的工作原理是在 Apple CNA 上的 Facebook 登录讨论中指出。
问题是,我们想让它在“正常”工作流程上运行,也就是说,让应用程序在 IOS 强制网络助手和 Android“登录 wi fi”功能中正常运行。
你知道我们该如何解决这个问题吗?我们四处寻找,没有任何成功。谢谢你。
编辑
通过使用 PHP SDK 而不是 javascript 解决。按照此处的说明生成登录链接。这也适用于 ios 和 android 等移动强制门户助手,因为 fb 登录页面是在同一个窗口中打开的,而不是在弹出窗口/iframe 中。我希望这可以帮助其他可能遇到同样问题的人。