一个用于代理和缓存 Bing 每日主页壁纸(Bing Wallpaper of the Day)的 Cloudflare Worker。
- 📸 代理 Bing 每日高清主页壁纸
- 🌍 支持国际版(www.bing.com)和中国版(cn.bing.com)
- ⚡ 长期缓存(1年),提升加载速度
- 🔄 自动处理不同分辨率和格式
- 🌐 支持跨域访问(CORS)
- 🛡️ 错误处理和日志记录
该 Worker 监听 HTTP 请求,当请求路径匹配特定格式时,会将请求转发到 Bing 的壁纸服务器,并对响应进行优化:
- 匹配 URL 格式:
/bing-ohr/[id].jpg或/bing-ohr/cn/[id].jpg - 提取壁纸 ID 和可选的区域标识(cn)
- 构建目标 URL,指向 Bing 壁纸服务器
- 转发请求并获取响应
- 设置优化的缓存策略和 CORS 头
- 返回处理后的响应
- Cloudflare 账号
- Node.js 和 npm(用于使用 Wrangler CLI)
-
克隆或下载本项目
-
安装 Wrangler CLI(如果尚未安装):
npm install -g wrangler
-
登录 Cloudflare:
wrangler login
-
部署 Worker:
wrangler deploy
-
配置自定义域(可选)
- 在 Cloudflare 仪表板中,为 Worker 添加自定义域
https://your-worker-domain/bing-ohr/[image-id].jpg
https://your-worker-domain/bing-ohr/cn/[image-id].jpg
获取国际版 Bing 高清主页壁纸:
https://your-worker-domain/bing-ohr/CathedralRock_ZH-CN7311070878_UHD.jpg
获取中国版 Bing 高清主页壁纸:
https://your-worker-domain/bing-ohr/cn/CathedralRock_ZH-CN7311070878_UHD.jpg
支持以下 URL 格式:
/bing-ohr/[image-id].jpg- 国际版 Bing/bing-ohr/cn/[image-id].jpg- 中国版 Bing
- 缓存时间:31536000 秒(1年)
- 缓存控制:
public, max-age=31536000, immutable - 确保壁纸资源长期缓存,减少重复请求
- 允许所有来源访问:
Access-Control-Allow-Origin: * - 支持的 HTTP 方法:
GET, HEAD, OPTIONS
bing-ohr-worker/
├── worker.js # 主 Worker 代码
├── wrangler.toml # Wrangler 配置文件(需自行创建)
└── README.md # 项目说明文档
name = "bing-ohr-worker"
main = "worker.js"
compatibility_date = "2024-01-01"
[[env.production]]
binding = "PRODUCTION"
value = trueMIT License
欢迎提交 Issue 和 Pull Request!
- 该项目仅用于学习和研究目的
- 请遵守 Bing 的使用条款和版权规定
- 请勿用于商业用途