我正在尝试将google个人资料图片显示为我的网站中的用户个人资料图片。我正在使用Google API从G Suite管理员SDK访问用户的Google缩略图URL。 当用户使用自己的个人资料登录时,Google chrome中的一切都很好。 从Internet Explorer进行访问时,很少有人无法查看其个人资料照片。
我观察到为显示图片的用户和其他未显示图片的用户获得的缩略图URL。我看到URL中有一些类似Public和private的东西。在所有浏览器中均显示带有公共名称的缩略图URL。 以下是网址:
https://www.google.com/s2/photos/ 公共 / AIbEiAIAAABECL7ptr30-bX1lwEiC3ZjYXJkX3Bob3RvKihkMDM3MGRjZTZjYmQxMmI4MGY0NGRhZDkwNzU5MGU5ODAwMGU3Z9>
https://www.google.com/s2/photos/ 私人 // AIbEiAIAAABDCJjb6eu7q_eWLSILdmNhcmRfcGhvdG8qKDAwODY0MjkxNjU1ZGJlNGJlM2RmNDM5YWEzZTM1OWFkZDQ1MThk1x9yd
我希望在所有浏览器中显示从Google检索到的个人资料图像。
答案 0 :(得分:0)
如@MαπμQμαπkγVπ.0的注释中所述,在G Suite中,thumbnailURL可以是私有的,特别是如果用户尚未启用Google +个人资料(对于G Suite帐户仍然有效)。 为了解决此问题,我使用了Admin SDK> Directory API和People API的组合。
目录API 以获取用户ID:
GET https://www.googleapis.com/admin/directory/v1/users/{userKey}
其中{userKey}
应替换为用户的主要电子邮件地址,别名电子邮件地址或唯一的用户ID。来源:https://developers.google.com/admin-sdk/directory/v1/reference/users/get
人物API 以获取公开的照片网址
GET https://people.googleapis.com/v1/people/{id}?personFields=photos
其中{id}
必须替换为在上一步中通过Directory API获得的用户ID。来源:https://developers.google.com/people/api/rest/v1/people/get
在引用的资源中,您可以将右侧边栏中的“尝试此API”用作测试的API场所。只需接受将要求的OAuth 2身份验证即可。如果获得授权,您将知道您的域是否允许使用People API。希望如此,对您有帮助。