我有一个系统,每当用户上传图片时,它都会向注册用户的 gmail 发送一封电子邮件。但在电子邮件中,我看到类似这样的内容,缩略图不可见。
我检查了元素,发现了 src
链接到这个 url: https://ci5.googleusercontent.com/proxy/VI2cPXWhfKZEIarh-iyKNz1j9q7Ymh8ty4Yz19lXh82RjSlACBzS0aRajfIj913uXAsX2ylcLEDs5FBsj4cR9TcU75Pw5djdHx4htxdCAQxs_ue1Q1wi5TV43uLLBpigpjH1xN747mUHSRdTBJmXQWFyykInJCRXicM1KhNk=s0-d-e1-ft#https://www.somedomain.com/files/1658/thumbnail_71JtDozxS1L._SY450_.jpg
显然它被谷歌代理缓存
但是我可以通过访问 https://www.somedomain.com/files/1658/thumbnail_71JtDozxS1L._SY450_.jpg
查看没有谷歌用户内容的图像(我屏蔽了域所以图像可能对您不可用)。
我试图清除浏览器缓存,但问题仍然存在。我怎样才能绕过 googleusercontent thingy 或至少使缩略图能够显示。
我在这个链接上结账 Images not displayed for Gmail 但我没有使用 localhost 并且图像本身可以在我的本地网络之外访问。
原文由 hades 发布,翻译遵循 CC BY-SA 4.0 许可协议
Google 图片代理如何工作
Google Image Proxy 是一个缓存代理服务器。每次电子邮件中包含图像链接时,请求都会首先转到 Google Image Proxy,看看它是否已被缓存,如果是,它应该从代理服务器提供它,或者它会去获取它并在之后缓存它。
大多数问题的解决方案
Google 图片代理服务器将在以下情况下获取您的图片:
.png
, - ,.jpg
.jpeg
.gif
也可能是.webp
。但不是.svg
。?id=123
图片服务器要求:
Content-Type: image/jpeg
。content-type
标头必须是同一类型。还有什么可以帮忙的?
谷歌支持回答: