fuliqi
2024-01-08 e247e6e01f4dda6e536cd822c25467d1b859cb77
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
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
package com.ycl.controller.dingding;
 
import cn.hutool.core.util.ObjectUtil;
import com.alibaba.fastjson.JSON;
import com.alibaba.fastjson.JSONArray;
import com.alibaba.fastjson.JSONObject;
import com.alibaba.xxpt.gateway.shared.api.request.OapiMediaUploadRequest;
import com.alibaba.xxpt.gateway.shared.api.response.OapiMediaUploadResponse;
import com.alibaba.xxpt.gateway.shared.client.http.ExecutableClient;
import com.alibaba.xxpt.gateway.shared.client.http.GetClient;
import com.alibaba.xxpt.gateway.shared.client.http.IntelligentPostClient;
import com.alibaba.xxpt.gateway.shared.client.http.PostClient;
 
import java.io.*;
 
import static com.ycl.common.constant.DingConst.GET_TIKER;
import static com.ycl.common.constant.DingConst.GET_TOKEN;
 
public class IntelligentClientTest {
    private static ExecutableClient executableClient;
 
    static {
        executableClient = ExecutableClient.getInstance();
        //DomainName不同环境对应不同域名,示例为sass域名
        executableClient.setDomainName("openplatform.dg-work.cn");
        executableClient.setProtocal("https");
        //应用App Key
        executableClient.setAccessKey("SC_ZHZF-IC5g2YiRDW8tug1DfAfiui");
        //应用App Secret
        executableClient.setSecretKey("39RIHFOKd8fUeeW9T7CdBcwEqA6dMKx5d3686B6P");
        executableClient.init();
    }
 
 
    private static String getToken() {
        //调用API
        GetClient getTokenClient = executableClient.newGetClient(GET_TOKEN);
        //设置参数
        getTokenClient.addParameter("appkey", "SC_ZHZF-IC5g2YiRDW8tug1DfAfiui");
        getTokenClient.addParameter("appsecret", "39RIHFOKd8fUeeW9T7CdBcwEqA6dMKx5d3686B6P");
        String apiResult = getTokenClient.get();
        return parsingResult(apiResult);
    }
 
 
    private static String parsingResult(String apiResult) {
        if (ObjectUtil.isNotNull(apiResult)) {
            JSONObject resJson = JSONObject.parseObject(apiResult);
            if (resJson.getBoolean("success")) {
                JSONObject content = resJson.getJSONObject("content");
                if (content.getBoolean("success")) {
                    JSONObject dataObj = content.getJSONObject("data");
                    String accessToken = dataObj.getString("accessToken");
                    return accessToken;
                }
            }
        }
        return null;
    }
 
    public static void main(String[] args) {
//        //executableClient保证单例
//        IntelligentPostClient intelligentPostClient = executableClient.newIntelligentPostClient("/media/upload");
//        OapiMediaUploadRequest oapiMediaUploadRequest = new OapiMediaUploadRequest();
//        String token = getToken();
//        //调用接口凭证
//        oapiMediaUploadRequest.setAccess_token(token);
//        //媒体文件类型,分别有图片(image)、语音(voice)、普通文件(file)
//        oapiMediaUploadRequest.setType("file");
//        //orm-data中媒体文件标识,有filename、filelength、content-type等信息
//        oapiMediaUploadRequest.setMedia("字符串");
//        intelligentPostClient.addFile(new File("F:\\视频\\C20353B5856A7413D4B40A8D42BBA569.mp4"));
//        //获取结果
//        OapiMediaUploadResponse apiResult = intelligentPostClient.post(oapiMediaUploadRequest);
//        System.out.println(apiResult);
        File file = new File("F:\\halon.json");
        try {
 
            JSONObject jsonObject = readerMethod(file);
 
            String dataList = jsonObject.getString("dataObj");
            JSONArray array = JSON.parseArray(dataList);
            String urls = "";
            for (int i = 0; i < 311; i++) {
                JSONObject object = (JSONObject) array.get(i);
                String path = object.getString("FilePath");
                urls += path + "\r\n";
            }
            System.out.println(urls);
 
        } catch (IOException e) {
            throw new RuntimeException(e);
        }
    }
 
    private static JSONObject readerMethod(File file) throws IOException, FileNotFoundException {
        FileReader fileReader = new FileReader(file);
        Reader reader = new InputStreamReader(new FileInputStream(file), "Utf-8");
        int ch = 0;
        StringBuffer sb = new StringBuffer();
        while ((ch = reader.read()) != -1) {
            sb.append((char) ch);
        }
        fileReader.close();
        reader.close();
        String jsonStr = sb.toString();
//        System.out.println(JSON.parseObject(jsonStr));
        return JSON.parseObject(jsonStr);
    }
}