facebook - 如何识别 Facebook User-Agent

标签 facebook user-agent

在 FB 上分享我的一个页面时,我想显示一些不同的东西。问题是,我更喜欢不使用 og: 元素,而是识别 FB 用户代理。

这是什么?我找不到它。

最佳答案

有关用户代理字符串的列表,请查找 here .截至 2015 年 9 月,最常用的是 facebookexternalhit/*Facebot。由于您没有说明您试图识别用户代理的语言,因此我无法告诉您更多信息。如果您确实想在 PHP 中识别 Facebook 机器人,请使用

if (
    strpos($_SERVER["HTTP_USER_AGENT"], "facebookexternalhit/") !== false ||          
    strpos($_SERVER["HTTP_USER_AGENT"], "Facebot") !== false
) {
    // it is probably Facebook's bot
}
else {
    // that is not Facebook
}

更新:Facebook 已将 Facebot 添加到其可能的用户代理字符串列表中,因此我更新了我的代码以反射(reflect)更改。此外,代码现在更容易预测 future 可能发生的变化。

关于facebook - 如何识别 Facebook User-Agent,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8626812/

相关文章:

flash - 加载crossdomain.xml策略文件时出现网络故障怎么办?

facebook - 范围 user_about_me 无效,此消息仅向开发人员显示,如果存在,您应用的用户将忽略这些权限

css - 如何在浏览器中勾勒 HTML 页面的元素以查看框的布局?修改用户代理样式表?

php - PHP-从User-Agent获取确切的iOS版本

user-agent - Amazon Kindle 用户代理字符串是什么?

iphone - 用户身份验证后永远不会调用 Facebook SDK 方法 'fbDidLogin' (iOS)

facebook - 设计+ omniauth注销

xcode - Cordova Xcode 部署 - CFBundleSupportedPlatforms 或 Mach-O LC_VERSION_MIN for A

java - 有什么方法可以使用 PhantomJSDriver 在 PhantomJS 中设置用户代理吗?

javascript - 检测 Edge Legacy 浏览器,而不是 Edge Chromium