占位符接口文档

通过 URL 获取可复现的 SVG 占位图片、头像和模拟数据,无需注册,也无需 API Key。

快速开始

占位图片

打开
<img
  src="https://zhanweifu.com/image/640x360.svg?style=none&text=商品图片&seed=catalog&v=2"
  alt="商品图片占位图"
>

模拟数据

打开
const response = await fetch(
  "https://zhanweifu.com/data/products.json?count=8&seed=catalog&v=2"
);
const { rows } = await response.json();

资源路由

资源路由输出范围
占位图片/image/{width}x{height}.svgSVG宽高 16 至 2400
头像/avatar/{size}.svgSVG尺寸 16 至 512
模拟数据/data/{scenario}.jsonJSON1 至 100 条
数据表/table/{scenario}.csvCSV1 至 100 条
数据表/table/{scenario}.htmlHTML1 至 100 条

参数说明

参数适用资源默认值规则
style图片、头像paperpapergridmononone
text图片最多 80 个 Unicode 字符
seed全部规范化资源路径相同种子生成相同内容;random 生成随机种子
bg图片、头像跟随风格不透明六位十六进制颜色,如 #f4f1ea
radius头像16外框圆角百分比,整数 0 至 50
countJSON、CSV、HTML20整数 1 至 100
v全部可省略生成器当前写入 2;服务端始终使用当前生成版本建立缓存键

风格与数据场景

图片风格

名称用途
paper明亮纸张与编辑感构图
grid深色网格与模块化构图
mono中性单色构图
none纯色背景,不生成装饰图案

模拟数据场景

JSON 响应包含 scenarioseedcountcolumnsrows,CSV 与 HTML 使用相同字段顺序。

场景字段
usersidnameemailroleavatar
articlesidtitleauthorcategorypublishedAt
productsidnamecategorypricestockimage
dashboardidmetricvaluechangeperiod

缓存与跨域

固定种子
相同路由、参数和种子会生成相同内容,并返回 Cache-Control: public, max-age=31536000, immutable
随机种子
seed=random 返回 302,重定向到一个明确种子的 URL;重定向响应不缓存。
跨域读取
JSON 与 CSV 响应包含 Access-Control-Allow-Origin: *。SVG 和 HTML 表格不声明跨域读取权限。
请求方法
服务只接受 GET;所有成功资源均包含 X-Content-Type-Options: nosniff

错误响应

状态码情况
400路由、格式或参数无效
405使用了 GET 以外的请求方法
500服务发生意外错误
{
  "error": {
    "code": "INVALID_DIMENSION",
    "message": "Width must be an integer from 16 to 2400."
  }
}

错误响应使用 Cache-Control: no-store,并允许跨域读取。

使用许可

由本服务生成的图片和数据可免费用于开发、测试和演示,无需署名。源代码采用 MIT License。