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);
|
}
|
}
|