我有一个 iframe 画布应用程序,它需要在使用前接受身份验证对话框,即从浏览器的角度来看,如果用户尚未接受所有请求,所有请求都会立即重定向到身份验证对话框。
这意味着 Facebook 解析器无法读取我页面上的 OpenGraph 标签,因为它永远无法通过授权点。
在更广泛的范围内,这个问题也会出现在任何需要登录才能查看的页面上。
解决此问题的最佳方法是什么?
我拥有的一种解决方案是检查客户端 IP 地址所属的组织是否是 Facebook,如果是,则未经授权允许其进入,并显示除 OG 标签外没有任何内容的页面。这对于从 Facebook 访问机器人程序来说很好,但如果员工尝试会发生什么;我不希望我的应用被禁用,因为政策团队的某个人无法正确验证该应用。
至于为什么我需要 OG 标签 - 用户经常分享应用程序的链接,它看起来很糟糕,只有一个 URL 作为标题和描述,没有图像。