本站自用的图片接口。支持分类随机、按宽高等比缩放、WebP 自动协商、ETag 条件请求与 CORS,图片可跨域调用。
| 参数 | 说明 | 默认 |
|---|---|---|
id | 指定图片文件名(不含扩展名),可从 ?list=1 获取。指定后响应可被长期缓存 | 随机 |
w | 目标宽度,100 ~ 2400,等比缩放 | 原图 |
h | 目标高度,与 w 同时给出时按居中裁剪填充 | — |
q | JPEG / WebP 质量,30 ~ 95 | 82 |
format | auto / webp / jpg / avif,auto 依据请求头 Accept 协商 | auto |
json | 返回 JSON 元信息(宽高、字节数、直链),不输出图片 | — |
list | 返回该分类全部图片的 JSON 清单 | — |
raw | 强制输出原始文件,忽略缩放 | — |
<!-- 直接用,浏览器自动按 Accept 拿到 WebP -->
<img src="https://kuangjianxin.cn/imgapi/FJ/?w=1200&format=webp" alt="随机风景">
<!-- 固定一张图 + 长缓存 -->
<img src="https://kuangjianxin.cn/imgapi/FJ/?id=beach-418742_1920&w=900">
<!-- 取回元信息 -->
fetch('https://kuangjianxin.cn/imgapi/MN/?json=1&w=800')
.then(r => r.json())
.then(d => console.log(d.url, d.width, d.height));
随机模式响应头为 Cache-Control: no-store,每次都会返回不同的图片;
指定 id 后为 public, max-age=31536000, immutable,并支持 ETag 命中 304。
所有缩放结果会落盘缓存到 imgapi/cache/,首次生成后直接读文件输出。