验证码校验接口

2022.06.17 13:01:07

    接口地址

    https://sms.dun.163.com/v2/verifysms

    请求参数

    公共参数已省略,详细见 公共参数,其他参数如下:

    参数名称 类 型 是否必选 最大长度 描述
    requestId String Y 32 短信发送接口返回的requestId字段
    code String Y 10 用户填写的验证码

    响应结果

    响应字段如下,响应通用字段已省略,详细见响应通用字段

    data 数据结构

    参数名称 类型 描述
    match Boolean 校验结果
    reasonType Number 原因(1-一致, 2-不一致, 3-requestId过期或不存在)

    请求示例

        /** 产品密钥ID,产品标识 */
        private final static String SECRETID = "your_secret_id";
        /** 产品私有密钥,服务端生成签名信息使用,请严格保管,避免泄露 */
        private final static String SECRETKEY = "your_secret_key";
        /** 业务ID,易盾根据产品业务特点分配 */
        private final static String BUSINESSID = "your_business_id";
        /** 本机认证服务身份证实人认证在线检测接口地址 */
        private final static String API_URL = "https://sms.dun.163.com/v2/verifysms";
        /** 实例化HttpClient,发送http请求使用,可根据需要自行调参 */
        private static HttpClient httpClient = HttpClient4Utils.createHttpClient(100, 100, 2000, 2000, 2000);
    
        /**
         *
         * @param args
         * @throws Exception
         */
        public static void main(String[] args) throws Exception {
            Map<String, String> params = new HashMap<String, String>();
            // 1.设置公共参数
            params.put("secretId", SECRETID);
            params.put("businessId", BUSINESSID);
            params.put("version", "v2");
            params.put("timestamp", String.valueOf(System.currentTimeMillis()));
            //32随机字符串
            //params.put("nonce", getRandomStr(32));
            params.put("nonce", "dh2u81hdah129zjk2hlla118snebd2q1");
            // 2.设置私有参数
            params.put("requestId", "dh2u81hdah129zjk2hlla118snebd2q1");
            params.put("code", "256336");
        
    
            // 3.生成签名信息
            String signature = SignatureUtils.genSignature(SECRETKEY, params);
            params.put("signature", signature);
            // 4.发送HTTP请求,这里使用的是HttpClient工具包,产品可自行选择自己熟悉的工具包发送请求
            String response = HttpClient4Utils.sendPost(httpClient, API_URL, params);
            //5.解析报文返回
            ApiResponse apiResponse = gson.fromJson(response, ApiResponse.class);
            //6.返回结果
            String requestId = apiResponse.getData().getRequestId();
        }
           
    

    响应示例

    当请求成功时,输出示例如下:

    {
    	"code": 200,
    	"msg": "ok",
    	"data": 
      	{
      	  "match" : true,
      	  "reasonType" : 1
    	}
    }
    
    Online Chat Tel:95163223