引言
Bing 每日一图以其高清的壁纸和丰富的视觉体验,成为许多用户的选择。本文将介绍如何通过 PHP 脚本和 Cloudflare Workers 搭建一个 Bing 每日一图的跳转 API,无需服务器和部署环境,轻松实现图片跳转功能。
准备工作
在开始操作之前,您需要准备以下内容:
- Cloudflare 账号:确保您拥有一个 Cloudflare 账号。
- 托管在 Cloudflare 的域名(可选):如果您希望使用自己的域名,可以先注册并托管到 Cloudflare。
操作步骤
第一步:登录 Cloudflare 控制台
打开 Cloudflare Dashboard,点击左侧导航栏中的 "Workers 和 Pages",选择「创建」,然后选择「从 Hello World! 开始」。
第二步:创建 Worker 服务
点击「部署」→「编辑代码」,进入编辑器页面。
第三步:替换默认代码
代码原作者:https://github.com/eilo2010/CF-Workers-BingDaily
将默认模板代码替换为以下脚本:
Bash
export default {
async fetch(request) {
// 获取 Bing 壁纸 JSON 数据
const res = await fetch('https://www.bing.com/HPImageArchive.aspx?format=js&idx=0&n=1');
const data = await res.json();
// 构造图片地址
const imageBase = data.images[0].urlbase;
const imageUrl = `https://www.bing.com${imageBase}_1920x1080.jpg`;
// 返回 302 重定向到原图
return Response.redirect(imageUrl, 302);
}
}
这段代码会自动获取 Bing 今日壁纸地址,并重定向到高清原图。
第四步:部署并访问
点击右上角的「部署」,Cloudflare 会为您分配一个免费的子域名,例如:
Bash
https://bingdaily.your-subdomain.workers.dev/
访问这个地址,您将直接跳转到今日的 Bing 高清壁纸。
第五步:绑定自定义域名
点击「设置」→「域和路由」→「添加」→「自定义域」,在弹出框中填写您希望绑定的域名地址,例如:
Bash
bingdaily.example.com
然后点击「添加域」。
效果演示
以下是访问跳转后的图片示例(每天更新):
部署成功后效果
- 自动获取必应每日高清壁纸:每天自动更新,无需手动操作。
- 通过 HTTP 302 重定向直链图片:节省带宽,提升加载速度。
- 基于 Cloudflare Workers,轻松管理。
- 免费且全球加速:访问快速稳定,适合个人博客、网站背景或壁纸工具使用。
常见问题解答
- 能否自定义分辨率或访问历史壁纸? 目前这段脚本是写死获取最新的 1920x1080 高清图。如果您想拓展功能,可以参考 Bing 提供的 JSON 接口文档,添加如下能力:
idx=1
:获取昨天的图。n=8
:一次获取 8 张图。- 替换
_1920x1080.jpg
为其他尺寸
非凡云提供高性价比的云服务器,非常适合个人站长和中小企业使用。
