基于 Netlify Functions 的随机图片 API 服务,使用 Go 语言实现。
- 支持多种图片类型(原神、星穹铁道、必应壁纸)
- 支持特定类型图片的样式转换(webp、jpg、png)
- 支持 JSON 和重定向两种返回方式
- 内置多级缓存机制
- 自动请求限流保护
- 完整的健康检查
- 支持跨域访问
GET /img?type=ysh
GET /img?type=ysh&json=true
- ysh: 原神横屏
- yss: 原神竖屏
- xqh: 星穹横屏
- xqs: 星穹竖屏
style参数仅在以下图片类型下可用:
- ysh (原神横屏)
- yss (原神竖屏)
- xqh (星穹横屏)
- xqs (星穹竖屏)
注意:
- 必应壁纸(bing)不支持样式转换
- style参数值将直接附加到图片URL中,格式为:
原始URL@参数值 - 建议参考B站图片处理规则使用合适的参数值
- 安装依赖:
go mod download- 本地构建:
go build -o functions/rangeImage ./functions/rangeImage.go- 部署到 Netlify:
git push- 复制环境变量示例文件:
cp .env.example .env-
修改 .env 文件中的 MongoDB 连接信息
-
本地测试:
go run functions/rangeImage.go- 环境要求:
- Go 1.19+
- MongoDB 4.0+
- Netlify CLI (可选)