人脸活体检测
京东万象 官方文档
在人脸识别应用中判断用户是否为真实本人操作
基本说明:
接口地址:https://way.jd.com/JDAI/detectHacknessV1
返回格式:json
请求方式:get/post
请求示例:https://way.jd.com/JDAI/detectHacknessV1?appkey=key&body={ "type": 1, "text": "我的为什么是这样?" }
请求参数说明:
名称 类型 必填 说明
appkey string 必填 该平台密钥 扫码关注公众号
body string 必填 json字符串,图像Base64编码值,去掉图片头"data:image/png;base64"
返回参数说明:
名称 类型 说明
faceItemsNir object 人脸活体
JSON返回示例:
{
	"status": 0,
	"charge": false,
	"remain": 97,
	"msg": "查询成功",
	"result": {
		"code": 0,
		"msg": "Accept",
		"processTimeInMs": 552,
		"timestamp": 1576729150797,
		"faceItems": [{
				"blurScore": 0.01,
				"boundingBox": {
					"height": 559.81,
					"left": 375.71,
					"top": 109.00,
					"width": 406.53
				},
				"isValidPosture": true,
				"posture": {
					"pitch": -9.99,
					"roll": -1.56,
					"yaw": 13.43
				}
			},
			{
				"blurScore": 0.00,
				"boundingBox": {
					"height": 554.01,
					"left": 849.03,
					"top": 98.94,
					"width": 392.19
				},
				"isValidPosture": true,
				"posture": {
					"pitch": -10.72,
					"roll": 0.68,
					"yaw": -1.38
				}
			}
		],
		"faceMatches": [{
			"createTime": "1576808089949",
			"customInfo": "45464",
			"faceId": "5dfc2e998788724bae434395",
			"groupId": "5df8c5ae87887252653b3cec",
			"imgBase64": "/9j/4AAQSkZJRgAB...",
			"score": 0.96,
			"updateTime": "1576808123367"
		}]
	}
}
服务级错误码参照
错误码 说明
10000 查询成功
10001 错误的请求appkey
11010 商家接口调用异常,请稍后再试
11030 商家接口返回格式有误
10003 不存在相应的数据信息
10004 URL上appkey参数不能为空
10010 接口需要付费,请充值
10020 万象系统繁忙,请稍后再试
10030 调用万象网关失败, 请与万象联系
10040 超过每天限量,请明天继续
10050 用户已被禁用
10060 提供方设置调用权限,请联系提供方
10070 该数据只允许企业用户调用
10090 文件大小超限,请上传小于1M的文件
完整教学代码示例
<?php
/**
 * Created by PhpStorm.
 * User: FZS
 * Time: 2021/03/27 15:26
 */
class freeApi
{
    private $apiUrl;

    public function __construct()
    {
        $this->apiUrl = 'https://way.jd.com/JDAI/detectHacknessV1?appkey=key&body={ "imageBase64": "iVBORw0K...", "topN": 5, "groupId": "5de9ff3087887242172ce62d" }';
    }

    /**
     * 获取结果
     * @return array
     */
    public function getResult()
    {
        return file_get_contents($this->apiUrl);
    }
}
package main

import (
	"fmt"
	"io/ioutil"
	"log"
	"net/http"
)

const (
	APIURL   = "https://way.jd.com/JDAI/detectHacknessV1?appkey=key&body={ "imageBase64": "iVBORw0K...", "topN": 5, "groupId": "5de9ff3087887242172ce62d" }"
)

func main() {
	queryUrl := fmt.Sprintf("%s",APIURL)
	resp, err := http.Get(queryUrl)
	if err != nil {
		log.Println(err)
		return
	}

	defer resp.Body.Close()

	body, err := ioutil.ReadAll(resp.Body)

	if err != nil {
		fmt.Println(err)
		return
	}

	fmt.Println(string(body))
}