# 使用证书模板校验
使用PKI服务默认配置的证书模板校验证书内容
# 一、请求说明
- 请求地址:http://api.spiderid.cn/openapi/svs/v1/cert/template/verify,https://api.spiderid.cn/openapi/svs/v1/cert/template/verify
- 服务接口名称(即公共参数method的值): cert/template/verify
- 请求方式:POST
TIP
当使用SDK时,请求地址:https://api.spiderid.cn
# 二、请求参数
名称 | 类型 | 是否必须 | 描述 |
---|---|---|---|
templateId | String | 否 | 验证模板id (如果管理系统配置默认模板,不传将使用默认模板校验证书) |
cert | String | 是 | 证书base64 |
# 三、响应参数
data 结果信息 | 类型 | 描述 |
---|---|---|
verification | Integer | 验证结果状态码 |
message | String | 验证信息 |
- verification 返回码介绍
字段 | 状态码 | 状态介绍 |
---|---|---|
SUCCESS | 0 | 验证成功 |
CERT_EXPIRED | 1 | 证书已过期 |
CERT_INEFFECTIVE | 2 | 证书未生效 |
CERT_USAGE_DEFICIENCY | 3 | 证书密钥用法错误 |
CERT_OU_MISMATCHING | 4 | 证书主题项不匹配 |
CERT_REVOKED | 5 | 证书已注销 |
CERT_UNTRUSTED | 6 | 证书不可信 |
SIGN_INVALID | 7 | 数字签名验证不通过 |
EXTENDED_KEYS_ARE_NOT_SUPPORTED | 8 | 证书密钥扩展用法不支持 |
UNKNOWN_STATUS | 9 | 证书状态未知 |
EXCEPTION | 10 | 验证异常 |
CERT_SERIAL_MISMATCHING | 11 | 证书序列号不匹配 |
# 四、成功示例
JSON示例
{
"code":0,
"message":"success",
"requestId":"xxx",
"data":{
"verification":0,
"message":"success"
}
}
# 五、失败示例
JSON示例
{
"code":10201,
"requestId":"xxx",
"message":"证书内容不合法"
}
# 六、SDK请求示例
// 提供的URL
String url = "https://api.spiderid.cn";
// 您的appKey
String appKey = "XXX";
// 您的appSecret
String appSecret = "XXX";
// 1.原客户端
PkiClient client = new PkiOkhttpClient(url, appKey, appSecret);
// 2.调用出错,自动重试客户端
CertTemplateVerifyRequest request = new CertTemplateVerifyRequest();
//证书base64
request.setCert("MIICszCCAligAw*****aru1A+nGqO78Uw=");
//验证模板ID
request.setTemplateId("623327946****0afbbcd95");
try {
CertTemplateVerifyResponse response = client.execute(request);
// 后续业务
if (response.isSuccess()) {
System.out.println("成功:" + response.getBody());
} else {
System.out.println("失败:" + response.getBody());
}
} catch (ApiException e) {
e.printStackTrace();
}