使用可立图证件照API制作证件照,调用免费,内含php、python、java的demo

小编给大家介绍一下证件照API接口如何使用,可立图的证件照API接口

1.第一步 注册账号,获取APIKeyhttps://www.clipimg.com

2.开发对接证件照接口

接口文档地址API文档

地址:https://www.clipimg.com/api/idphoto/make

请求方式:POST

数据类型:JSON

响应类型:JSON

计费:此接口不产生费用

参数[Header]

参数名说明是否必选类型
X-API-Key秘钥必选string
Content-Type请求数据类型必选application/json

参数[Body]:

参数名说明是否必选类型
file图片的base64格式,不包含base64的头部数据必选string
spec_id规格id可选,width、height不传值时必传int
width宽度px可选,spec_id不传值时必传int
height高度px可选,spec_id不传值时必传int
fair_level美颜级别可选,0-1之间的小数,为0时不美颜float
color背景色可选,默认值蓝红白三种颜色list
facepose人脸是否正对摄像头误差范围可选,越小越严格,越大容错率越高,默认:20float
eyeskew双眼倾斜误差范围可选,越小越严格,越大容错率越高,默认:20float
face_ratio_min人脸最小比率可选,默认0.4float
face_ratio小于最小比例后放大比例可选,默认0.52float
dpi返回的证件照分辨率,如果不设置该值,服务端会给出默认配置,一般返回300dpi的图片 可选int

3.请求示例

java

//证件照制作
    public JSONObject IdphotoMake(String img,List<Map> colors,int width,int height,float fair_level,int dpi) throws IOException{
        HashMap<String,Object> data = new LinkedHashMap<>();
        String base64Str = fileToBase64(new File(img));
        // colors组装示例
        // HashMap<String,Object> color = new LinkedHashMap<>();
        // color.put("name","blue");
        // color.put("start_color","#FFFFFF");
        // List<Map> colors = new LinkedList<Map>();
        // colors.add(color);
        data.put("file",base64Str);
        data.put("color",colors);
        data.put("dpi",dpi);
        data.put("width",width);
        data.put("height",height);
        data.put("fair_level",fair_level);

        StringEntity entity = new StringEntity(JSON.toJSONString(data), ContentType.APPLICATION_JSON, "utf-8", false);//解决中文乱码问题
        Response response;
        try {
            response = Request.post("https://www.clipimg.com/api/idphoto/make")
            .addHeader("X-API-Key", this.apiKey)
            .body(entity).execute();
            
            return JSON.parseObject(response.returnContent().asString());
            
        } catch (IOException e) {
            // TODO Auto-generated catch block
            e.printStackTrace();
        }
        return null;
    }

php

/**
     * 制作证件照
     * $img 上传的人像图片本地地址
     * 参数说明参考文档https://clipimg.com/wp/api-doc/
     */
    public function IdphotoMake($img,$color,$width,$height,$fair_level,$dpi){
        $client = new Client();
        $base64_img = base64_encode(file_get_contents($img));//转换成base64格式
        $response = $client->request('POST', $this->api_url.$this->idphoto, [
            'headers' => [
                'X-API-Key' => $this->apiKey,
                'Content-Type'     => 'application/json'
            ],
            'body'=>json_encode(["file"=>$base64_img,"width"=>$width,'height'=>$height,'dpi'=>$dpi,"color"=>$color,'fair_level'=>$fair_level])
        ]);
        $json = json_decode($response->getBody()->getContents());
        
        return $json;
    }

python

    # /**
    # * 制作证件照
    # * img 上传的人像图片本地地址
    # * 参数说明参考文档https://clipimg.com/wp/api-doc/
    # */
    def IdphotoMake(self,img,color,width,height,fair_level,dpi):
        with open(img, 'rb') as f:
            pic = f.read()
        base64_img = base64.b64encode(pic).decode()
        response = requests.post(self.api_url + self.idphoto, 
            headers = {
                'X-API-Key' : self.apiKey,
                'Content-Type'     : 'application/json'
            },
                 data=json.dumps({"file":base64_img,"width":width,'height':height,'dpi':dpi,"color":color,'fair_level':fair_level})
        )
        result = response.json()
        
        return result
    

完整示例下载

类似文章