我可以仅使用thumbnailPhotoUrl显示G Suite用户照片吗?

时间:2019-05-01 14:52:04

标签: firebase google-api google-cloud-firestore gsuite

问题

网络应用程序可以仅使用thumbnailPhotoUrl来显示G Suite用户的个人资料图像吗,还是必须保存并提供该图像?

上下文

This Guide描述了如何从Directory API获取图像。但是我不确定如何从get请求移至可以显示的图像文件。提到了Closure Library用于Base64编码/解码。

我想使用链接到图像,以用作src元素的img

我尝试过的东西

使用具有域范围内委派的服务帐户的Firebase云功能正在通过https://www.googleapis.com/admin/directory/v1/users检索用户数据。这将返回thumbnailPhotoUrl,我可以将URL粘贴到chrome中并查看图像。如果我与其他人共享thumbnailPhotoUrl,他们将看不到图像,而是看到轮廓占位符。

请注意:thumbnailPhotoUrl包括/private这样的:

https://www.google.com/s2/photos/private/xyz123...

是不是该URL在Web应用程序中无法显示图像的线索?

1 个答案:

答案 0 :(得分:0)

您可以将URL的内容直接嵌入HTML文档中。看起来像这样:

<img width="16" height="16" alt="star" src="data:image/gif;base64,R0lGODlhEAAQAMQAAORHHOVSKudfOulrSOp3WOyDZu6QdvCchPGolfO0o/XBs/fNwfjZ0frl3/zy7////wAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAACH5BAkAABAALAAAAAAQABAAAAVVICSOZGlCQAosJ6mu7fiyZeKqNKToQGDsM8hBADgUXoGAiqhSvp5QAnQKGIgUhwFUYLCVDFCrKUE1lBavAViFIDlTImbKC5Gm2hB0SlBCBMQiB0UjIQA7" />

魔术部分是获取图像二进制数据并对其进行img标签的base-64编码。

上面示例的格式:

data:[<mime type>][;charset=<charset>][;base64],<encoded data>

link提供了更多详细信息,并说明了如何执行此操作。