← 返回首页

随机图片 API

本站自用的图片接口。支持分类随机、按宽高等比缩放、WebP 自动协商、ETag 条件请求与 CORS,图片可跨域调用。

随机风景图
FJ · 风景(3 张)
随机人像图
MN · 人像(3 张)

接口地址

GET/imgapi/FJ/随机风景图(原图)
GET/imgapi/MN/随机人像图(原图)
GET/imgapi/FJ/?w=1200&format=webp缩放 1200px 宽,输出 WebP
GET/imgapi/FJ/?id=lake-192990_1920&w=900指定图片,可长缓存
GET/imgapi/FJ/?list=1返回该分类图片清单
GET/imgapi/FJ/?json=1&w=900返回图片元信息与直链

参数

参数说明默认
id指定图片文件名(不含扩展名),可从 ?list=1 获取。指定后响应可被长期缓存随机
w目标宽度,100 ~ 2400,等比缩放原图
h目标高度,与 w 同时给出时按居中裁剪填充—
qJPEG / WebP 质量,30 ~ 9582
formatauto / 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/,首次生成后直接读文件输出。