附件上传接口
使用说明
实现附件上传,需要通过SDK调用如下方法即可:
uploadFile(String moduleName, Map
filesMap) SDK获取方式:
注意事项:
1、为避免调用超时,请分批次传递数据,每次调用不要超过100条
2、为避免后期获取图片出错,上传图片时的key必须保证全局唯一
1. 批量上传附件
方法说明
使用项目管理平台授权文件
+SDK
进行接口请求,该方法用于批量上传附件。
方法名:uploadFile
请求参数说明:
参数名 | 参数类型 | 必填 | 默认值 | 说明 |
---|---|---|---|---|
moduleName |
String | 是 | 无 | 模块名,大门口传固定值 gate |
files |
Map集合 | 是 | 无 | 附件集合, key为附件名,key必须全局唯一,value为附件的字节数组 |
响应结果说明:
字段名 | 字段类型 | 默认值 | 说明 |
---|---|---|---|
success |
Boolean | 无 | 接口调用是否成功 |
data |
Array | 无 | 响应内容对象 |
contentType |
String | 空字符串 | 内容类型 |
key |
String | 无 | 待上传的附件文件名称 |
savedKey |
String | 无 | 待上传的附件存储标识 |
失败响应体示例
{
"success":false,
"errorMessage":"url is error"
}
成功响应体示例:
{
"success":true,
"data":[
{
"contentType":"",
"key":"6bba8838d195e98359881fb0b1efd3f9.jpg",
"savedKey":"gate/6bba8838d195e98359881fb0b1efd3f9.jpg"
},
{
"contentType":"",
"key":"5d2ef37f24f6c890e150bd04fe98ecd7.jpg",
"savedKey":"gate/5d2ef37f24f6c890e150bd04fe98ecd7.jpg"
},
{
"contentType":"",
"key":"b0e351839c0b96dd20d45868e1eb1828.jpg",
"savedKey":"gate/b0e351839c0b96dd20d45868e1eb1828.jpg"
},
{
"contentType":"",
"key":"6d8013bc16fd7807e9f29ec719323aaa.jpg",
"savedKey":"gate/6d8013bc16fd7807e9f29ec719323aaa.jpg"
}
]
}
代码示例
public void UploadFile() throws IOException, InvalidUriException, NoAuthenticateException, AuthenticateException{
GysRestClient gysRestClient = GysRestClient.getInstance("C:\\Users\\qizh\\Desktop\\fffffffffffff\\auth.lic");
Map<String,byte[]> paramMap = new HashMap<>();
File file = new File("C:\\Users\\qizh\\Desktop\\fffffffffffff\\6d8013bc16fd7807e9f29ec719323aaa.jpg");
File file2 = new File("C:\\Users\\qizh\\Desktop\\fffffffffffff\\5d2ef37f24f6c890e150bd04fe98ecd7.jpg");
File file3 = new File("C:\\Users\\qizh\\Desktop\\fffffffffffff\\6bba8838d195e98359881fb0b1efd3f9.jpg");
File file4 = new File("C:\\Users\\qizh\\Desktop\\fffffffffffff\\b0e351839c0b96dd20d45868e1eb1828.jpg");
paramMap.put(file.getName(), IOUtils.toByteArray(new FileInputStream(file)));
paramMap.put(file2.getName(), IOUtils.toByteArray(new FileInputStream(file2)));
paramMap.put(file3.getName(), IOUtils.toByteArray(new FileInputStream(file3)));
paramMap.put(file4.getName(), IOUtils.toByteArray(new FileInputStream(file4)));
Result restResponseInfo = gysRestClient.uploadFile("gate", paramMap);
if(restResponseInfo.isSuccess()){
System.out.println(restResponseInfo.getData());
}else{
System.out.println(restResponseInfo.getErrorMessage());
}
}