Skip to content

Latest commit

 

History

History
277 lines (204 loc) · 4.27 KB

API-reference.md

File metadata and controls

277 lines (204 loc) · 4.27 KB

API 参考

用户接口

新用户注册

POST /user/signup

参数列表

名称 类型 描述
name String 用户名
image String base64 编码图像

响应

用户唯一标识符:

e3e9e0ff-aae1-49f8-ade3-9a3af79984de

获取用户唯一标识符

GET /user/:name/token

参数列表

名称 类型 描述
image String base64 编码图像

响应

{
  "success": true,
  "token": "<uuid>",
  "message": "ok"
}

用户认证

POST /user/auth

与获取用户标识符类似,不同之处在于认证需要通过 POST 方法且 URL 中不包含参数。

注意:这个方法有副作用,会导致用户的 last 字段更新(用于表示上次认证的图像数据用于人工核查)

参数列表

名称 类型 描述
token String 用户标识符
image String base64 编码图像

响应

{
  "success": true,
  "token": "<uuid>",
  "message": "ok"
}

门禁控制接口

获取门锁列表

GET /gates

响应

[
  {
    "id": "<uuid>"
  }
]

门禁唯一标识符同样使用 uuid v4。

开门操作

GET /gate/:id/open

警告:仅供调试。将会直接向门锁发出开启指令。生产环境请禁用。

响应

{
  "success": true,
  "message": "gate has been opened"
}

认证并开门

POST /gate/:id/auth

参数列表

名称 类型 描述
token String 用户唯一标识符
image String base64 编码图像

响应

{
  "success": true,
  "message": "gate has been open"
}

认证并开门 (弃用)

POST /gate/auth

注意:这是一个旧的 API 并在将来版本中会被移除。

参数列表

名称 类型 描述
id String 门锁唯一标识符
token String 用户唯一标识符
image String base64 编码图像

响应

true

通用接口

人脸检测

POST /api/face/detection

参数列表

名称 类型 描述
image String base64 编码图像

响应

{
  "count": 1,
  "faces": [
    {
      "x": 113,
      "y": 66,
      "width": 72,
      "height": 86
    }
  ]
}

人脸对齐/特征点标定

POST /api/face/landmarks

参数列表

名称 类型 描述
image String base64 编码图像

响应

{
  "count": 1,
  "faces": [
    {
      "x": 113,
      "y": 66,
      "width": 72,
      "height": 86,
      "points": [
        { "x": 131.15, "y": 104.488 },
        { "x": 158.064, "y": 101.253 },
        { "x": 144.462, "y": 118.552 },
        { "x": 138.1, "y": 135.026 },
        { "x": 157.969, "y": 132.387 }
      ]
    }
  ]
}

人脸识别

POST /api/face/identify

参数列表

名称 类型 描述
image String base64 编码图像

响应

{
  "similars": [0.210629, 0.219952, 0.999999, 0.148808],
  "count": 1,
  "faces": [
    {
      "x": 113,
      "y": 66,
      "width": 72,
      "height": 86,
      "points": [
        { "x": 131.15, "y": 104.488 },
        { "x": 158.064, "y": 101.253 },
        { "x": 144.462, "y": 118.552 },
        { "x": 138.1, "y": 135.026 },
        { "x": 157.969, "y": 132.387 }
      ]
    }
  ]
}

当数据库中没有已注册用户时等效于人脸对齐

生成二维码

GET /qrcode

参数列表

名称 类型 描述
content String qr code content

响应

data:image/png;base64,...

将返回以 base64 形式编码的二维码图像。