如何确定 Facebook 用户是否上传了个人资料图片或默认图片?

2023-11-30

有没有办法知道用户是否将图像上传到个人资料或通过 Facebook 的默认用户图片FQL或者是其他东西?


如果用户没有照片,那么当您请求指定了“照片”字段的用户对象时,is_silhouette 字段将为 true。

请求示例:

https://graph.facebook.com/username?fields=picture

回复:

{
   "id": "100002095576350",
   "picture": {
      "data": {
         "url": "http://profile.ak.fbcdn.net/static-ak/rsrc.php/v2/yo/r/UlIqmHJn-SK.gif",
         "is_silhouette": true
      }
   }
}

快速但肮脏的 PHP 函数:

function facebook_user_has_photo($username_or_id){

        $request = file_get_contents('https://graph.facebook.com/'.$username_or_id.'?fields=picture');

        if($request):

            $user = json_decode($request);

            if($user && !$user->picture->data->is_silhouette) return true;

        endif;

        return false;

}
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

如何确定 Facebook 用户是否上传了个人资料图片或默认图片? 的相关文章

随机推荐

  • RESTEasy - 动态添加资源类

    通过 RESTEasy 我实现了 Application 的子类来提供单例资源列表 有没有办法稍后动态添加另一个单例 我还没有从 API 文档中找到实现这一点的方法 我自己没有尝试过 但我找到了一篇博客文章 其中描述了这一点 http sa
  • 在 fltk 窗口内绘制 gnuplot 图形

    我正在编写一个程序 它使用用 fltk 打开的窗口绘制 3D 对象 虽然我真的想在同一个窗口 除了 3D 对象 中添加一些 gnuplot 的图形 因为它们比 OpenGl 的图形更漂亮 那可能吗 我正在致力于模拟对象的运动并用 OpenG
  • 通过进程名称取消隐藏进程?

    前段时间我写了一段代码来隐藏 恢复进程窗口 我所做的是这样的 隐藏进程 1 在正在运行的进程中查找进程名 2 将 MainWindowHandle 添加到容器 在本例中为字典 这对于稍后取消隐藏该进程是必要的 3 使用ShowWindow
  • 如何获取视频的最后一帧?

    我想要视频的最后一帧 我的代码如下所示 let asset AVURLAsset AVURLAsset URL videoURL options nil let generate AVAssetImageGenerator AVAssetI
  • 如果文件已经打开,fopen 是否返回 NULL 指针?

    我当时假设fopen回报NULL指针 如果文件已打开 但看起来fopen不返回NULL如果文件已在以下位置打开 w 模式 下面是我用来尝试此操作的代码 但没有收到任何错误 我尝试使用 mingw32 以及 TDM GCC 64 编译器 如果
  • MVC2:是否有用于原始 Html 的 Html Helper?

    是否有一个 Html 助手可以简单地接受并返回原始 html 而不是做这样丑陋的事情 h2 Results h2 我想做这样的事情 虽然不是很干净 但我认为这是一个进步 存在这样的东西吗 或者是否有比使用 Html 助手更好的替代方法来从这
  • Mysql问题:没有mysql.sock

    昨天我正在使用安装在我的计算机上的 MySQL 进行工作 我下载了xampp 所以我改变了my cnf文件到套接字的路径 opt lampp var mysql mysql sock 该文件就在那里 今天我想继续处理它 我发现该文件不再存在
  • 选择所有行及其在单个查询中的计数

    我有一些名为 items 的表 想要从中获取一些行并在单个查询中计数 全部 现在我正在尝试这样的操作 SELECT COUNT as count SELECT FROM items WHERE as items FROM items 但我得
  • NSDictionary 对象中的非字符串键?

    我已经使用 Foundation 框架中的 NSJSONSerialization 解析了一些 JSON 数据 但是 我得到了 NSDictionary 组的奇怪密钥 如下所示 stop times departure time 5 48a
  • 为什么 SymGetSymFromAddr64 不工作?它返回错误代码 126

    我正在尝试使用以下代码捕获异常的堆栈跟踪 include stdafx h include
  • nls——收敛误差

    对于这个数据集 dat structure list x c 5L 5L 5L 5L 10L 10L 10L 10L 15L 15L 15L 15L 17L 17L 17L 17L 20L 20L 20L 20L 20L 20L 20L 2
  • 如何根据 pandas 中另一行的值组合一行中的值

    我有一个带有几列的 pandas 数据框 单词 开始时间 停止时间 扬声器 我想合并 word 列中的所有值 而 speaker 列中的值不变 此外 我想保留组合中第一个单词的 开始 值和最后一个单词的 停止 值 我目前有 word sta
  • 如何通过比较两个现有变更日志文件来生成变更日志文件

    我正在使用 Liquibase 工具来维护 MySQL 服务器中数据库的版本 在这里 我为数据库生成changeLogFile 一星期后 我想将现有的changeLogFile 与相同的数据库进行比较 在这里 我需要获取上周数据库中进行的更
  • ussd的设计模式建议[重复]

    这个问题在这里已经有答案了 我在用着php创建 USSD 页面 我以前做过这件事 而且这是一项时间有限的黑客工作 基本上是一个巨大的文件 其中包含手机用户可能处于的所有可能状态的 switch 语句 然后将其保存在数据库中并在下一个 USS
  • 使用cowplot将x和y laaxis标签添加到ggplot-grid构建中

    我用cowplot制作了一个网格 library ggplot2 library cowplot ggg1 lt ggplot mtcars aes mpg vs geom point theme axis title x element
  • 使用 Conda 创建像 Anaconda 这样的自定义安装程序

    我正在尝试封装我的 python 环境 以便它可以在不同的机器上使用 为此 我确实使用了 pipelinev 它工作得很好 现在我发现了 Anaconda 我发现这个想法很棒 你可以下载安装程序 pkg 或 win 安装程序 它会手动完成你
  • 驱动程序信息:driver.version:ChromeDriver 未知 使用 Selenium 和 Python 的 Chrome

    当我使用 chrome 驱动程序时 显示驱动程序服务器启动超时 当我尝试使用 Firefox 时 它显示会话意外退出 我正在尝试使用 python 中的 selenium 在服务器上运行远程驱动程序 我应该怎么办 无法创建新会话 未知错误
  • 如何使用 requestAnimationFrame 循环播放多个方块的动画

    我正在使用 HTML 画布绘制多个正方形 我有 2 个函数 1 绘制一个正方形 2 在循环内绘制多个正方形 现在我想使用这些方块来制作动画请求动画帧一次绘制一个正方形 我怎样才能做到这一点 这里有一个jsFiddle var canvas
  • 带有命名占位符的 PDO 准备语句 IN 子句无法按预期工作[重复]

    这个问题在这里已经有答案了 假设一个场景 ids 2 3 但由于某种原因 记录被返回 就像 ids 2 我相信完整代码中的这一行存在一些问题 因为当我回显时 ids 它返回2 3 但实际查询返回时就好像只有一个 id 一样 IE 它仅返回一
  • 如何确定 Facebook 用户是否上传了个人资料图片或默认图片?

    有没有办法知道用户是否将图像上传到个人资料或通过 Facebook 的默认用户图片FQL或者是其他东西 如果用户没有照片 那么当您请求指定了 照片 字段的用户对象时 is silhouette 字段将为 true 请求示例 https gr