由于 Google 图片缓存/代理,Gmail 中的图片无法显示

use*_*396 5 google-apps-script

我有一个向订阅用户发送电子邮件的脚本,目前正面临图像无法为使用 Gmail 的用户正确显示的问题。

电子邮件中使用的图像是公开可用的,例如:

https://info.xxxx.vn/banner/2018/xxxx-600x300.jpg
https://info.xxxx.vn/banner/2018/xxxx2018v2-600x300.jpg
Run Code Online (Sandbox Code Playgroud)

当电子邮件发送给 Gmail 用户时,Gmail 会将图片链接更改为:

https://ci3.googleusercontent.com/proxy/E6ElwPPH-lH4YdxOtzc8rl9GUpcPA_Kf1E0UFDxNT877wV70lA-KgwQDYQhTXU8ed7U9HJF21PMmGiv0M93jnAKvHszQcFdVAf7ApQta2QgQ=s0-d-e1-ft#https://info.xxxx.vn/banner/2018/xxxx-600x300.jpg
https://ci5.googleusercontent.com/proxy/xK0x7LIhvH9Inax29k0bZKsnC5FerVEhNXjyleL0lU0tbXgb2RBLOYcy_j834lJlOISKgwT6yzJmPWCuHGb9wBkycdEWvwGgWPWJ87NGAJbrosh6gibo9A=s0-d-e1-ft#https://info.xxxx.vn/banner/2018/xxxx2018v2-600x300.jpg
Run Code Online (Sandbox Code Playgroud)

上面的每个图像链接都返回响应 404。

我尝试过的事情:

  1. 使用上传到 AWS S3 的图像在电子邮件中
    显示:- 在电子邮件中完美显示
  2. 禁用可能阻止爬虫访问域的任何防火墙:
    - 图像仍未显示。
    - 网络团队没有注意到对 URL 的任何外部请求

有没有办法让我知道 Google 在尝试缓存图像时返回的确切错误?现在它总是显示 404 错误,我无法解决确切的问题。

我也非常感谢任何其他有助于解决我现在面临的问题的意见。

非常感谢您提前。

小智 6

如果图像太大,也会发生这种情况。

\n\n

使用 21MB GIF = \xe2\x9d\x8c 响应 404 错误

\n\n

使用 1MB GIF = \xe2\x9c\x85 效果很好

\n


abi*_*ita 3

你可以参考这个论坛。这可能是由于您的服务器上的 DNS 问题造成的。另外从这个博客来看,谷歌代理服务器似乎在创建新链接时将文件名中的任何(空格)转换为+。尝试重命名所有资源以避免使用(空格)。