发型更换H5项目 API 文档

v1.3 · 2026-08-10

1. 文档说明

本文档描述了发型更换H5项目的API接口规范,所有前后端交互都应遵循此文档。任何API变更都应先修改此文档,然后再进行代码实现。

版本历史

版本日期描述作者
v1.02026-01-18初始版本系统生成
v1.12026-02-10补充发色更换接口,修正数据格式系统更新
v1.22026-08-10生产域名 /hair 前缀;发型预览图改为本机静态路径系统更新
v1.32026-08-10补充全部发型预览图完整链接;分辨率更新为 634×950系统更新

基本信息

接入方请使用对外路径 /hair/api/...。直连本机 5000 端口时可用 /api/...(仅限服务器本机调试)。

2. 响应格式

成功响应

{
  "success": true,
  "data": { ... }
}

失败响应

{
  "success": false,
  "message": "错误信息"
}

3. 接口列表总览

接口路径方法功能描述
/hair/api/hairstyles GET 获取发型列表
/hair/api/change-hair POST 更换发型
/hair/api/change-hair-color POST 更换头发颜色

4. 详细接口说明

4.1 获取发型列表

GET /hair/api/hairstyles

请求参数

无

示例:GET https://meida.xiangsilian.com/hair/api/hairstyles

响应示例

{
  "success": true,
  "data": {
    "hairstyles": [
      {
        "id": "1953267161121464322",
        "name": "发型4322",
        "image_url": "/hair/images/hairstyles/1953267161121464322.jpg"
      },
      {
        "id": "1953267288284372994",
        "name": "发型2994",
        "image_url": "/hair/images/hairstyles/1953267288284372994.jpg"
      }
    ]
  }
}

字段说明

字段名类型描述
idString发型唯一标识符(长数字串,来源于 hairId2url.txt)
nameString发型名称(格式:"发型" + ID后4位)
image_urlString发型预览图本机相对路径,完整访问为 https://meida.xiangsilian.com + image_url

图片存放在服务器 frontend/images/hairstyles/,分辨率 634 × 950(原图 60%)。完整链接见 7.2。

4.2 更换发型

POST /hair/api/change-hair

请求参数 multipart/form-data

参数名类型必填描述
imageFile是用户上传的图片文件(支持 png/jpg/jpeg/gif,最大 16MB)
hairstyle_idString是要更换的发型ID

响应示例

{
  "success": true,
  "data": {
    "result_image": "data:image/jpeg;base64,/9j/4AAQSkZJRgABAQAAAQABAAD..."
  }
}

响应字段

字段名类型描述
result_imageString发型更换后的图片,Base64 Data URL 格式
注意事项

4.3 更换头发颜色

POST /hair/api/change-hair-color

请求参数 multipart/form-data

参数名类型必填描述
imageFile是用户上传的图片文件(支持 png/jpg/jpeg/gif,最大 16MB)
rgbString是RGB颜色值,格式为 "[R, G, B]",例如 "[255, 106, 0]"
ratioString是颜色替换强度,范围 0.0 ~ 1.0,例如 "0.9"

响应示例

{
  "success": true,
  "data": {
    "result_image": "data:image/jpeg;base64,/9j/4AAQSkZJRgABAQAAAQABAAD..."
  }
}

响应字段

字段名类型描述
result_imageString发色更换后的图片,Base64 Data URL 格式
注意事项

5. 错误处理

错误响应格式

{
  "success": false,
  "message": "请上传图片"
}

错误状态码列表

状态码接口触发条件错误消息
400/hair/api/change-hair缺少图片请上传图片
400/hair/api/change-hair缺少发型ID请选择发型
400/hair/api/change-hair文件类型不合法不支持的文件类型,请上传图片文件
400/hair/api/change-hair-color缺少图片请上传图片
400/hair/api/change-hair-color缺少颜色值请选择颜色
400/hair/api/change-hair-color缺少替换比例请设置更换比例
400/hair/api/change-hair-color文件类型不合法不支持的文件类型,请上传图片文件
500/hair/api/hairstyles服务器内部错误获取发型列表失败: [错误信息]
500/hair/api/change-hair处理失败处理图片失败: [错误信息]
500/hair/api/change-hair-color处理失败处理图片失败: [错误信息]

6. API 变更流程

  1. 文档修改 — 先修改本 API 文档,记录变更内容、原因和影响范围
  2. 代码实现 — 根据文档修改后端 API 实现
  3. 前端适配 — 前端根据文档修改进行适配
  4. 测试验证 — 测试新 API 的功能和兼容性
  5. 部署上线 — 按计划部署变更

7. 附录

7.1 支持的图片格式

格式MIME 类型扩展名
PNGimage/png.png
JPEGimage/jpeg.jpg / .jpeg
GIFimage/gif.gif

文件大小限制:16MB

7.2 发型预览图完整链接(本机)

发型 ID名称完整链接
1953267161121464322发型4322https://meida.xiangsilian.com/hair/images/hairstyles/1953267161121464322.jpg
1953267288284372994发型2994https://meida.xiangsilian.com/hair/images/hairstyles/1953267288284372994.jpg
1953270523594317826发型7826https://meida.xiangsilian.com/hair/images/hairstyles/1953270523594317826.jpg
1953270724765720577发型0577https://meida.xiangsilian.com/hair/images/hairstyles/1953270724765720577.jpg
1953271922151432194发型2194https://meida.xiangsilian.com/hair/images/hairstyles/1953271922151432194.jpg
1953272913265467394发型7394https://meida.xiangsilian.com/hair/images/hairstyles/1953272913265467394.jpg
1953288800932503554发型3554https://meida.xiangsilian.com/hair/images/hairstyles/1953288800932503554.jpg
1954536242109784066发型4066https://meida.xiangsilian.com/hair/images/hairstyles/1954536242109784066.jpg
1954536297776586754发型6754https://meida.xiangsilian.com/hair/images/hairstyles/1954536297776586754.jpg
1954536402516746241发型6241https://meida.xiangsilian.com/hair/images/hairstyles/1954536402516746241.jpg
1954536893304840194发型0194https://meida.xiangsilian.com/hair/images/hairstyles/1954536893304840194.jpg
1954536956919848962发型8962https://meida.xiangsilian.com/hair/images/hairstyles/1954536956919848962.jpg
1954537022875279362发型9362https://meida.xiangsilian.com/hair/images/hairstyles/1954537022875279362.jpg
1954537085882114050发型4050https://meida.xiangsilian.com/hair/images/hairstyles/1954537085882114050.jpg
1954537191729569793发型9793https://meida.xiangsilian.com/hair/images/hairstyles/1954537191729569793.jpg
1954537709436706817发型6817https://meida.xiangsilian.com/hair/images/hairstyles/1954537709436706817.jpg
1954537743532204034发型4034https://meida.xiangsilian.com/hair/images/hairstyles/1954537743532204034.jpg
1954537961069780994发型0994https://meida.xiangsilian.com/hair/images/hairstyles/1954537961069780994.jpg
1954538119216013313发型3313https://meida.xiangsilian.com/hair/images/hairstyles/1954538119216013313.jpg
1954538156499181569发型1569https://meida.xiangsilian.com/hair/images/hairstyles/1954538156499181569.jpg
1954538259330932738发型2738https://meida.xiangsilian.com/hair/images/hairstyles/1954538259330932738.jpg
1954538335306555393发型5393https://meida.xiangsilian.com/hair/images/hairstyles/1954538335306555393.jpg
1980312945301954561发型4561https://meida.xiangsilian.com/hair/images/hairstyles/1980312945301954561.jpg
1980313052302843905发型3905https://meida.xiangsilian.com/hair/images/hairstyles/1980313052302843905.jpg
1980313166576656385发型6385https://meida.xiangsilian.com/hair/images/hairstyles/1980313166576656385.jpg
1980313210109337601发型7601https://meida.xiangsilian.com/hair/images/hairstyles/1980313210109337601.jpg
1980313433502162946发型2946https://meida.xiangsilian.com/hair/images/hairstyles/1980313433502162946.jpg
1980313576506957825发型7825https://meida.xiangsilian.com/hair/images/hairstyles/1980313576506957825.jpg
1980313740403580930发型0930https://meida.xiangsilian.com/hair/images/hairstyles/1980313740403580930.jpg
1980313819915001858发型1858https://meida.xiangsilian.com/hair/images/hairstyles/1980313819915001858.jpg
1980314032369082369发型2369https://meida.xiangsilian.com/hair/images/hairstyles/1980314032369082369.jpg
1980314209322573825发型3825https://meida.xiangsilian.com/hair/images/hairstyles/1980314209322573825.jpg
1980314290419441665发型1665https://meida.xiangsilian.com/hair/images/hairstyles/1980314290419441665.jpg
1980314381058351106发型1106https://meida.xiangsilian.com/hair/images/hairstyles/1980314381058351106.jpg
1980314477720281090发型1090https://meida.xiangsilian.com/hair/images/hairstyles/1980314477720281090.jpg
1980314710101499906发型9906https://meida.xiangsilian.com/hair/images/hairstyles/1980314710101499906.jpg
1980314764421931009发型1009https://meida.xiangsilian.com/hair/images/hairstyles/1980314764421931009.jpg
1980314868713299969发型9969https://meida.xiangsilian.com/hair/images/hairstyles/1980314868713299969.jpg
1980315179934851074发型1074https://meida.xiangsilian.com/hair/images/hairstyles/1980315179934851074.jpg
1980315238260842497发型2497https://meida.xiangsilian.com/hair/images/hairstyles/1980315238260842497.jpg
1980361636742209537发型9537https://meida.xiangsilian.com/hair/images/hairstyles/1980361636742209537.jpg
1980367742952579074发型9074https://meida.xiangsilian.com/hair/images/hairstyles/1980367742952579074.jpg
1980367781510815746发型5746https://meida.xiangsilian.com/hair/images/hairstyles/1980367781510815746.jpg
1980367800787836929发型6929https://meida.xiangsilian.com/hair/images/hairstyles/1980367800787836929.jpg
1980367852847538177发型8177https://meida.xiangsilian.com/hair/images/hairstyles/1980367852847538177.jpg
1980367968627105793发型5793https://meida.xiangsilian.com/hair/images/hairstyles/1980367968627105793.jpg
1980368109866098690发型8690https://meida.xiangsilian.com/hair/images/hairstyles/1980368109866098690.jpg
1980368205752082434发型2434https://meida.xiangsilian.com/hair/images/hairstyles/1980368205752082434.jpg
1980368368847593473发型3473https://meida.xiangsilian.com/hair/images/hairstyles/1980368368847593473.jpg
1980368465631158274发型8274https://meida.xiangsilian.com/hair/images/hairstyles/1980368465631158274.jpg
1980368588293578754发型8754https://meida.xiangsilian.com/hair/images/hairstyles/1980368588293578754.jpg
1980413320612847618发型7618https://meida.xiangsilian.com/hair/images/hairstyles/1980413320612847618.jpg
1980415346071609345发型9345https://meida.xiangsilian.com/hair/images/hairstyles/1980415346071609345.jpg
1980415897056354306发型4306https://meida.xiangsilian.com/hair/images/hairstyles/1980415897056354306.jpg
1981177324700549122发型9122https://meida.xiangsilian.com/hair/images/hairstyles/1981177324700549122.jpg
1981177378714796034发型6034https://meida.xiangsilian.com/hair/images/hairstyles/1981177378714796034.jpg
1981177477423546370发型6370https://meida.xiangsilian.com/hair/images/hairstyles/1981177477423546370.jpg
1981177594750812162发型2162https://meida.xiangsilian.com/hair/images/hairstyles/1981177594750812162.jpg
1981177742742634497发型4497https://meida.xiangsilian.com/hair/images/hairstyles/1981177742742634497.jpg
1981177931859607554发型7554https://meida.xiangsilian.com/hair/images/hairstyles/1981177931859607554.jpg

7.2 开发工具推荐

发型更换H5项目 API 文档 · v1.3 · 最后更新 2026-08-10