确定 Google 缩略图 URL 的“u”部分

问题描述 投票:0回答:1

使用 Google Apps 脚本,我正在为工作 Intranet 生成用户列表及其照片缩略图。该内联网需要使用 Oauth 登录 Google。

缩略图 URL 类似于:

https://lh3.google.com/ao/AHP4FtlN1wzP_pjUvk0MEP-2tSZumfJi9eMJmCvi0mK8QDvuUSyU-kzXARP_oCrxjC6ugchgVUA=s288-c

这本身不起作用,并会产生以下“通用”剪影占位符:

enter image description here

如果我将以下“用户”部分添加到网址中:/u/1

https://lh3.google.com/u/1/ao/AHP4FtlN1wzP_pjUvk0MEP-2tSZumfJi9eMJmCvi0mK8QDvuUSyU-kzXARP_oCrxjC6ugchgVUA=s288-c

图像正常工作,我得到了所需尺寸(288x288 像素)的正确缩略图

我了解 /u/1 中的 1 表示我登录 Google 帐户的顺序。 1 表示这是我登录的第二个帐户,0 表示第一个帐户。

我还发现,对于某些 Google 网址,我可以将数字替换为我想要用来访问资源的帐户。

例如

Google 云端硬盘缩略图:

https://drive.google.com/[电子邮件受保护]&sz=w175&id=ALV-UjXcpIrWPSs-S6EKh2joeQh_C18zIGCcCqBt9arhmKbF1_kaZZp

Google 日历链接: https://calendar.google.com/calendar/b/[电子邮件受保护]/r/eventedit/1234567890

所以,我的问题是。如何确定我的电子邮件地址映射到的用户号码?

我使用 PHP 和 GoogleOAuth 来使用以下代码/范围登录:

$this->client = new Google\Client();
$this->client->setAuthConfig($oauthCredentialsFile);
$this->client->setRedirectUri($redirectUri);

$this->client->addScope('https://www.googleapis.com/auth/userinfo.profile'); 
$this->client->addScope('https://www.googleapis.com/auth/userinfo.email'); 

我已经检查了 OAuth 值和

$me = $oauth2Service->userinfo_v2_me->get();
的值,但没有任何帮助。

我可以添加什么来确定我当前是哪个用户 (/u/1)?

我知道对于大多数 Intranet 用户来说,他们只会登录一个 Google 帐户,因此我可以只使用 /u/0,但这看起来很笨拙。

我还发现我可以在 Google Apps 脚本中下载缩略图照片,但此尺寸仅限于 96x96 像素,而且我找不到获得更大尺寸的方法。

谢谢!

php google-apps-script google-oauth
1个回答
0
投票

对于其他一直摸不着头脑的人。我发现您可以将以下内容添加到 URL 末尾:

[电子邮件受保护]

因此:

https://lh3.google.com/ao/AHP4FtlN1wzP_pjUvk0MEP-2tSZumfJi9eMJmCvi0mK8QDvuUSyU-kzXARP_oCrxjC6ugchgVUA=s288-c?authuser=lee.taylor@example.com

希望对其他人有帮助!

© www.soinside.com 2019 - 2024. All rights reserved.