使用 Cloudflare Worker 处理图片

💡 原文中文,约1400字,阅读约需4分钟。
📝

内容提要

作者使用Cloudflare Worker和WebAssembly解决博客图床不支持缩放/剪裁图片的问题,开源了一个图片缩放服务,支持多种图片处理功能。

🎯

关键要点

  • 作者使用Cloudflare Worker和WebAssembly解决博客图床不支持缩放/剪裁图片的问题。

  • 之前使用Backblaze B2和Cloudflare作为网盘,但博客图床不支持图片处理功能。

  • 调研了两个方案,均因稳定性和复杂度不理想而放弃。

  • 发现Cloudflare Worker支持WebAssembly,决定使用Worker + WebAssembly处理图片。

  • 尝试使用Rust类库Photon,但存在更新慢和输出格式限制的问题。

  • 最终参考DenoFlare和jSquash,结合Photon和Cloudflare Worker开发了图片缩放服务。

  • 支持PNG、JPG、BMP、ICO、TIFF格式图片处理,默认输出WEBP格式。

  • 支持管道操作、Cloudflare缓存和图片地址白名单,处理失败返回原图。

  • 方案已开源在Github,提供文档供用户部署。

➡️

继续阅读