使用 googleAPI 获取电子邮件签名

Fetch Email Signature using googleAPI

我正在使用 googleAPI 和 Nodjs 使用 oauth2 详细获取邮件。0.But 我没有收到带有图片的电子邮件签名 format.What 是 API 获取带有签名作为图像附件格式的传入电子邮件?

Gmail 合并的图片签名不是作为附件或内联图片,而是作为下载 link 分配给邮件正文 text/html 中的 img src .

如果您记录以原始格式检索到的消息正文(出于隐私原因,域名和文件 ID 已替换为 XXX),您将获得的响应片段如下:

Content-Type: text/html; charset="UTF-8"
Content-Transfer-Encoding: quoted-printable

<div dir=3D"ltr"><br clear=3D"all"><div><div dir=3D"ltr" class=3D"gmail_sig=
nature" data-smartmail=3D"gmail_signature"><div dir=3D"ltr"><img src=3D"htt=
ps://drive.google.com/a/XXXXXXXXXXXXXXXXX/uc?id=3DXXXXXXXXXXXXXXXXXX=
sYV-&amp;export=3Ddownload"><br></div></div></div></div>

请记住,URL 是引用可打印编码的。您需要删除软换行符 = 并将 =3D 替换为 = 以获得正确的 URL - 类似

https://drive.google.com/a/XXXXXXXXXXXXXXXXX/uc?id=XXXXXXXXXXXXXXXXXXsYV-&amp;export=download

您可以在浏览器中打开此 link 或通过获取消息的正文部分(针对 Content-Type: text/html 过滤)并提取 link 以编程方式访问它,例如使用正则表达式。