如何屏蔽图片的 Facebook 图形 api URL?

2024-02-08

我正在尝试在我的网站上显示 Facebook 个人资料图片,但不想泄露源中人员的 Facebook ID。

例如,这个网址:http://graph.facebook.com/4/picture http://graph.facebook.com/4/picture将重定向到:http://profile.ak.fbcdn.net/hprofile-ak-snc4/157340_4_3955636_q.jpg http://profile.ak.fbcdn.net/hprofile-ak-snc4/157340_4_3955636_q.jpg当您将其加载到浏览器中时。我想获取第二个网址(CDN 网址)并将其用作我的 img src,因为它在网址中不显示 facebook id。

我目前正在 Ruby on Rails 中执行此操作,并且很好奇是否有比我在下面所做的更好的方法:

def picture_square(facebook_id, secure=false)
  raw_url = "http://graph.facebook.com/" facebook_id + "/picture?type=square"
  if secure
    binary_img = ''
    open(raw_url) do |f|
      binary_img = f.read
    end
    encoded_img = Base64.encode64(binary_img)
    return 'data:image/jpg;base64,' + encoded_img.to_s
  else
    return raw_url
  end
end

您可以使用以下 HTML 来调用它(使用上面的示例):

<img src="<%= picture_square(4, true) %>"

这绝对有效,并使用内联图像属性来实际渲染图像,但如果您尝试加载一堆图像,那么速度会有点慢。

Ruby 中是否有一种方法可以获取重定向的 URL 并返回该 URL,而不是尝试获取实际的原始二进制数据并将其编码为 base64?


使用以下 url 调用图形 API:

这将返回您在 json 响应中查找的图像。另一种选择是向您发布的第一个 url 发出 http 请求,然后检查 HTTP 标头以读取位置标头。

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

如何屏蔽图片的 Facebook 图形 api URL? 的相关文章

随机推荐

  • 枚举mysql查询中使用的表?

    有没有办法枚举mysql查询中使用的表 可以说我有疑问 SELECT FROM db people people facts pf INNER JOIN db system connections sm ON sm source id pf
  • 如何查看 Chrome 扩展程序的总安装数?

    我正在通过 Chrome 网上商店分发 Chrome 扩展程序 但我无法找到网上商店告诉我我的扩展程序有多少 总安装量 的地方 我想知道自从我第一次上传扩展程序以来总共有多少人安装了它 在谷歌上进行一些快速搜索 在谷歌帮助部分中找到了以下文
  • Mac OS 和 FreeBSD 之间 kqueue 处理 fifo 的差异?

    我正在开发一个应用程序 该应用程序使用 fifos 进行 IPC 并使用事件通知 API 例如 epoll 或 kqueue 来监视 fifos 以获取要读取的数据 应用程序期望 如果 fifo 的写入器终止 则读取器将通过事件通知 API
  • xcopy 包含文件夹

    这应该是一个简单的问题 但我一直找不到答案 我想将文件夹 不仅仅是内容 复制到桌面 我尝试过的所有内容都只包含该文件夹的内容 我已经尝试了下面的内容 但内容仍然只是复制 xcopy C Users user Folder C Users u
  • Sencha Touch - 需要嵌套列表示例

    我需要一个简单的嵌套列表视图示例 类似这样的事情 source roosteronacid com http www roosteronacid com mockup png 当您单击某个项目时 您将过渡 滑动 到包含另一个列表的下一个视图
  • 在 Eclipse“作为小程序运行”中也更改我的小程序的大小

    我目前正在做我的第一个小程序 在测试结果时 我希望能够在预览窗口中的 eclipse 中运行它 而不是总是将小程序部署到 jar 中并在浏览器中打开页面 浏览器缓存杀了我 我总是需要重新启动浏览器 不管怎样 当我尝试使用 运行方式 gt J
  • 为什么不能推断这些泛型类型?

    我有以下代码 public static class CardView public static object Column
  • 如何在 Matplotlib 中为文本添加动画?

    我正在尝试为 Matplotlib 图中的文本框设置动画 但似乎无法使其工作 有谁知道如何正确执行此操作 下面是一个例子 from matplotlib import animation import matplotlib pyplot a
  • 从网络摄像头录制视频流并将 blob 上传到服务器

    所以我有一个网站可以记录来自用户网络摄像头的视频流并将其转换为 blob 使用getUserMedia 我现在想将此 blob 发送到服务器 以便可以保存和处理视频 我在通过 ajax 发送 blob 文件时遇到问题 我尝试过使用 form
  • 如何使用 AJAX 更新选择菜单而不使用表单内的

    我正在使用 ajax 调用来更新选择菜单 ajax 调用通过从不同的 php 文件运行来将列表放入我的选择菜单中 这是 JS 插入片段 if req status 200 document getElementById countydiv
  • Pyplot:共享轴并且子图之间没有空间

    这与 或者更确切地说是后续 有关matplotlib 中共享轴方形子图的新 pythonic 风格 https stackoverflow com questions 13629994 new pythonic style for shar
  • 如何对使用层方法的 lambda 逻辑进行单元测试?

    您好 我有 AWS Lambda 我想为其添加一个层 我希望能够只测试 lambda 的单个方法 然而 其中许多都使用层逻辑 因此在我看来这并不容易 做到这一点的最佳方法是什么 一种方法是封装层 主机位于某处并将其用作依赖项 既然如此 为什
  • Delphi XE - TRibbon 操作始终将焦点发送到 MainForm

    当我将 TRibbon 控件放置在不是应用程序 MainForm 的窗体上时 TRibbon 的操作 即剪切 粘贴 将始终在执行操作后将焦点返回到 MainForm 即使保存 TRibbon 的 TForm 不是 MainForm 的子级
  • “less”命令显示输出所花费的时间

    我有一个可以产生大量输出的脚本 脚本在该点暂停几秒钟T 现在我正在使用less命令来分析脚本的输出 所以我执行 script less 我让它运行足够的时间 以便脚本完成执行 现在 我按 Pg Down 键查看 less 命令的输出 令人惊
  • 使用 pythonpyral 将标签添加到 Rally 缺陷

    我正在尝试使用pyral python 包创建Rally 缺陷 需要添加标签 TestTag2 有没有办法在创建缺陷时添加标签 我正在尝试在创建缺陷后添加标签 但出现以下错误 info Workspace workspace 123 Pro
  • 如何在 ASP.NET Core 中获取 HttpContext.Current.Session?

    我需要将 MVC 项目迁移到 net Core 我知道它已从 ASP net Core 中删除了 System Web 我需要转换 HttpContext Current Session 名称 在 ASP NET Core 中为 Null
  • 访问 Firefox 中的文件下载对话框

    是否有任何类型的 API 可以让我在 Firefox 中操作文件下载对话框 我想访问用户执行某些操作时出现的内容 而不是自己启动的内容 我想做的是从 Selenium 访问这个对话框 我也不确定 Selenium 特权模式 是否足以访问 c
  • MSB3411 无法加载 Visual C++ 组件

    我有 MS Visual Studio 2012 Ultimate 操作系统是 Windows 7 并且安装了 nodeJs 我想使用 npm 安装 socket io 但出现以下错误 C Users NEW gt npm install
  • 哪些标准 C++ 类不能在 C++ 中重新实现?

    我正在查看 C 0x 的计划并发现std initializer list用于在用户类中实现初始值设定项列表 此类无法在 C 中实现 不使用自身 或者使用一些 编译器魔法 如果可以的话 就不需要它了 因为无论您使用什么技术来实现initia
  • 如何屏蔽图片的 Facebook 图形 api URL?

    我正在尝试在我的网站上显示 Facebook 个人资料图片 但不想泄露源中人员的 Facebook ID 例如 这个网址 http graph facebook com 4 picture http graph facebook com 4