Skip to content

API ‐ 文件相关API

lifegpc edited this page Oct 4, 2024 · 9 revisions

文件接口

获取文件/文件元数据

GET /api/file/[id]

参数名字 参数类型 可选 描述
[id] int 文件ID
data boolean 是否返回文件元数据,默认为false(0)

根据页面token获取文件列表

GET /api/files/[token]

参数名字 参数类型 可选 描述
[token] string token,多个token可用,分隔

获取随机文件

GET /api/file/random

参数名字 参数类型 可选 描述
is_nsfw boolean 按是否为NSFW筛选,默认为不筛选
is_ad boolean 按是否为广告筛选,默认为不筛选
thumb boolean 是否返回缩略图,默认为false(0)

页面元数据相关接口

获取页面元数据

GET /api/filemeta/[token]GET /api/filemeta

参数名字 参数类型 可选 描述
[token]/token string 页面token

更新页面元数据

POST /api/filemeta

参数名字 参数类型 可选 描述
token string 页面token
gid int 从画廊ID确定要覆盖的页面
is_nsfw boolean 图片是否NSFW
is_ad boolean 图片是否为广告
tokens string(JSON为string[]) ,分隔的多个页面token
excludes string(JSON为string[]) ,分隔的多个需要排除的页面token
  • excludes 仅当 gid 指定时有效。
  • 优先级为 token > gid > tokens,如都未指定,将返回错误。
  • 该接口接受JSON数据,需要将Content-Type设为application/json

覆盖页面元数据

PUT /api/filemeta

参数名字 参数类型 可选 描述
token string 页面token
gid int 从画廊ID确定要覆盖的页面
is_nsfw boolean 图片是否NSFW
is_ad boolean 图片是否为广告
tokens string(JSON为string[]) ,分隔的多个页面token
excludes string(JSON为string[]) ,分隔的多个需要排除的页面token
  • excludes 仅当 gid 指定时有效。
  • 优先级为 token > gid > tokens,如都未指定,将返回错误。
  • 该接口接受JSON数据,需要将Content-Type设为application/json

缩略图相关API

获取缩略图

GET /api/thumbnail/[id]

参数名字 参数类型 可选 描述
[id] int 文件ID
max int 最大一边的像素,默认为400
width int 宽度
height int 高度
quality int 图片质量,默认为1
force boolean 是否在指定大小大于原图时强制生成缩略图,默认为false(0)
method "cover" | "contain" | "fill" | null 指定缩放的方法
align "left" | "top" | "center" | "right" | "bottom" | null 缩放时的位置,默认为left / top
  • 如果forcefalse,当原图的大小小于指定大小时,会重定向至原图。
  • widthheight 指定时,max 将会被忽略。
  • widthheight 只有其一指定时,将根据图片比例确定另一边长度。
  • method 仅当 widthheight 同时指定时有效,如FFMPEG API未启用,将直接忽略。
  • align 仅当 methodcovercontain 时生效。
  • cover 会移除多余的部分,contain 会缩小大小以容纳整张图片。