puzhibing
2023-10-08 22199bbdda579861736420fe26c2873ab0f5d21c
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
package com.sinata.rest.core.huawei.ivs;
 
import com.huaweicloud.sdk.core.auth.BasicCredentials;
import com.huaweicloud.sdk.core.auth.ICredential;
import com.huaweicloud.sdk.core.exception.ConnectionException;
import com.huaweicloud.sdk.core.exception.RequestTimeoutException;
import com.huaweicloud.sdk.core.exception.ServiceResponseException;
import com.huaweicloud.sdk.ivs.v2.IvsClient;
import com.huaweicloud.sdk.ivs.v2.model.*;
import com.huaweicloud.sdk.ivs.v2.region.IvsRegion;
import com.sinata.rest.core.huawei.HuaWeiConfig;
 
import java.util.ArrayList;
import java.util.List;
import java.util.UUID;
 
public class DetectExtentionByNameAndIdSolution {
    public static void main(String[] args) {
        boolean flag = isValid("xx", "500xxxxxxxxxxxxxx");
        System.out.println(flag);
    }
 
    public static boolean isValid(String verificationName, String verificationId) {
        boolean flag = false;
        try {
            DetectExtentionByNameAndIdResponse response = request(verificationName, verificationId);
            if (response.getResult().getRespData().get(0).getVerificationCode() == 1000) {
                flag = true;
            }
        } catch (Exception e) {
            e.printStackTrace();
        }
        return flag;
    }
 
    public static DetectExtentionByNameAndIdResponse request(String verificationName, String verificationId) {
        String ak = HuaWeiConfig.AK;
        String sk = HuaWeiConfig.SK;
 
        ICredential auth = new BasicCredentials()
                .withAk(ak)
                .withSk(sk);
 
        IvsClient client = IvsClient.newBuilder()
                .withCredential(auth)
                .withRegion(IvsRegion.valueOf("cn-north-4"))
                .build();
        DetectExtentionByNameAndIdRequest request = new DetectExtentionByNameAndIdRequest();
        IvsExtentionByNameAndIdRequestBody body = new IvsExtentionByNameAndIdRequestBody();
        List<ExtentionReqDataByNameAndId> listDataReqData = new ArrayList<>();
        listDataReqData.add(
                new ExtentionReqDataByNameAndId()
                        .withVerificationName(verificationName)
                        .withVerificationId(verificationId)
        );
        IvsExtentionByNameAndIdRequestBodyData databody = new IvsExtentionByNameAndIdRequestBodyData();
        databody.withReqData(listDataReqData);
        Meta metabody = new Meta();
        metabody.withUuid(UUID.randomUUID().toString());
        body.withData(databody);
        body.withMeta(metabody);
        request.withBody(body);
        try {
            DetectExtentionByNameAndIdResponse response = client.detectExtentionByNameAndId(request);
            System.out.println(response.toString());
            return response;
        } catch (ConnectionException e) {
            e.printStackTrace();
        } catch (RequestTimeoutException e) {
            e.printStackTrace();
        } catch (ServiceResponseException e) {
            e.printStackTrace();
            System.out.println(e.getHttpStatusCode());
            System.out.println(e.getRequestId());
            System.out.println(e.getErrorCode());
            System.out.println(e.getErrorMsg());
        }
        return null;
    }
}