随机壁纸 API

随机高清壁纸,来自 wallhaven(仅全年龄)或 Lorem Picsum

数据来源:wallhaven.cc / picsum.photos

返回统一的 JSON 格式 { code, message, cached, stale, updatedAt, data },支持跨域,免注册每天可免费调用 100 次,注册后每天 10000 次。

随机返回一张壁纸的信息与地址

GET /api/wallpaper/random

请求参数

  • source:图源:wallhaven(仅 SFW)或 picsum,示例 wallhaven
  • category:分类:all / general / anime / people,示例 anime
  • resolution:最低分辨率,格式 宽x高,示例 1920x1080
  • ratio:宽高比,例如 16x9、9x16(手机壁纸),示例 16x9
  • q:关键词(英文效果更好,仅 wallhaven),示例 mountain

返回字段

  • id(string):壁纸 ID:wallhaven 为壁纸编号(如 "zyxvqy");picsum 为随机生成的 12 位十六进制种子,同一种子总是对应同一张图
  • url(string):原图链接:wallhaven 为原始文件,分辨率见 width/height;picsum 为按 width×height 生成的 JPG 图片地址
  • page(string|null):详情页:wallhaven 为 https://wallhaven.cc/w/{id};picsum 固定为 https://picsum.photos/;上游缺失时为 null
  • thumb(string|null):缩略图链接:wallhaven 为官方预览缩略图(优先 large 规格,没有时用 original 规格,均远小于原图);picsum 为 480×270;缺失时为 null
  • width(number|null):原图宽度(像素);picsum 为请求的宽度(上限 5000,默认 1920);上游缺失时为 null
  • height(number|null):原图高度(像素);picsum 为请求的高度(上限 5000,默认 1080);上游缺失时为 null
  • resolution(string|null):分辨率,格式 "宽x高",如 "3840x2160";上游缺失时为 null
  • category(string|null):分类:general=综合、anime=动漫、people=人物;picsum 固定为 general
  • fileSize(number|null):文件大小(字节);picsum 为 null
  • fileType(string|null):文件 MIME 类型,如 image/jpeg、image/png;picsum 固定为 image/jpeg
  • colors(array):主色调,字符串数组,每项为 "#rrggbb" 格式;picsum 或上游未提供时为空数组
  • source(string):实际图源:"wallhaven" 或 "picsum"。请求 source=picsum 时固定为 picsum;默认走 wallhaven,若 wallhaven 请求失败或没有符合条件的结果且未传 q,会自动回退为 picsum 随机图(此时本字段为 "picsum",category/ratio 不生效);传了 q 时不回退:没有结果返回 404,wallhaven 故障返回 502/504

302 跳转到一张随机壁纸,可直接用作 <img> 地址

GET /api/wallpaper/random.jpg

请求参数

  • source:图源:wallhaven(仅 SFW)或 picsum,示例 wallhaven
  • category:分类:all / general / anime / people,示例 anime
  • resolution:最低分辨率,格式 宽x高,示例 1920x1080
  • ratio:宽高比,例如 16x9、9x16(手机壁纸),示例 16x9
  • q:关键词(英文效果更好,仅 wallhaven),示例 mountain