【发布时间】:2013-12-18 01:34:56
【问题描述】:
我有一个网页(在 Drupal 6 中),其中包含一个 Facebook 点赞按钮和一个评论框。 Facebook 通过开放图形标签接收必须共享的信息。匿名用户无法访问本网站,仅限注册用户访问。
当匿名用户尝试打开网站时,他会被重定向到登录页面。问题来了:当 Facebook 扫描页面以接收应该共享的信息时,站点以匿名用户身份处理并重定向到登录页面。所以 Facebook 会收到登录页面的信息(图片、描述)。当 Facebook 试图扫描我的网站以避免将其重定向到登录页面(不知何故没有 Facebook API)时,我能否以某种方式决定/验证?
【问题讨论】:
-
您可以使用一种方式,这样如果用户登录,则将调用 facebook api 或者它不会调用 facebook api。在您登录的用户 ID 中使用 if else 语句
-
我不想使用FB API,如果没有任何方法可以解决问题。
-
如果你想使用facebook like按钮,那么你必须使用facebook API,没有其他出路。
-
您可以获取 Facebook IP 列表 (stackoverflow.com/questions/11164672/…) 并让他们绕过身份验证。不过要小心。
-
按照@soulseekah 的建议使用 IP,和/或识别 Facebook 用户代理
facebookexternalhit/1.1 (+http: //www.facebook.com/externalhit_uatext.php)并且不重定向到登录页面是解决此问题的最佳方法。