本篇文档提供了Java SDK截图模板功能的API调用示例。包含添加截图模板、修改截图模板、删除截图模板、查询截图模板列表等。
初始化客户端
使用前请先初始化客户端,请参见初始化。
添加截图模板
调用AddVodTemplate接口,完成添加截图模板功能。
接口参数和返回字段请参见AddVodTemplate。调用示例如下:
import com.alibaba.fastjson.JSON;
import com.alibaba.fastjson.JSONObject;
import com.aliyuncs.vod.model.v20170321.AddVodTemplateRequest;
import com.aliyuncs.vod.model.v20170321.AddVodTemplateResponse;
/**
* 构建截图模板的配置数据,根据具体设置需求修改对应的参数值
* (以下代码示例为雪碧图完整配置)
* @return
*/
public static JSONObject buildSnapshotTemplateConfig() {
JSONObject templateConfig = new JSONObject();
JSONObject snapshotConfig = new JSONObject();
snapshotConfig.put("Count", "50");
snapshotConfig.put("Interval", "1");
snapshotConfig.put("SpecifiedOffsetTime", "0");
snapshotConfig.put("Width", "200");
snapshotConfig.put("Height", "200");
snapshotConfig.put("FrameType", "normal");
//普通截图配置(与雪碧图原始图配置共用该配置信息)
templateConfig.put("SnapshotConfig", snapshotConfig);
//雪碧图配置(雪碧图配置必须是建立在普通截图配置之上)
JSONObject spriteSnapshotConfig = new JSONObject();
spriteSnapshotConfig.put("CellWidth", "120");
spriteSnapshotConfig.put("CellHeight", "68");
spriteSnapshotConfig.put("Columns", "3");
spriteSnapshotConfig.put("Lines", "10");
spriteSnapshotConfig.put("Padding", "20");
spriteSnapshotConfig.put("Margin", "50");
spriteSnapshotConfig.put("KeepCellPic", "keep");
spriteSnapshotConfig.put("Color", "tomato");
snapshotConfig.put("SpriteSnapshotConfig", spriteSnapshotConfig);
//截图类型(存在雪碧图配置,该类型必须是"SpriteSnapshot",否则为"NormalSnapshot")
templateConfig.put("SnapshotType", "SpriteSnapshot");
return templateConfig;
}
/**
* 添加截图模板函数
*/
public static AddVodTemplateResponse addSnapshotVodTemplate(DefaultAcsClient client) throws Exception {
AddVodTemplateRequest request = new AddVodTemplateRequest();
//模板名称
request.setName("截图模板添加测试");
//模板类型,固定值为Snapshot
request.setTemplateType("Snapshot");
//截图模板配置数据生成
JSONObject templateConfig = buildSnapshotTemplateConfig();
request.setTemplateConfig(templateConfig.toJSONString());
return client.getAcsResponse(request);
}
/**
* 以下为调用示例
* @param args
* @throws ClientException
*/
public static void main(String[] args) {
DefaultAcsClient client = initVodClient("<Your AccessKeyId>", "<Your AccessKeySecret>");
AddVodTemplateResponse response = new AddVodTemplateResponse();
try {
//添加截图模板
response = addSnapshotVodTemplate(client);
//截图模板ID
System.out.println("SnapshotVodTemplateId = " + response.getVodTemplateId());
} catch (Exception e) {
System.out.println("ErrorMessage = " + e.getLocalizedMessage());
}
System.out.println("RequestId = " + response.getRequestId());
}
修改截图模板
调用UpdateVodTemplate接口,完成修改截图模板功能。
接口参数和返回字段请参见UpdateVodTemplate。调用示例如下:
import com.alibaba.fastjson.JSON;
import com.alibaba.fastjson.JSONObject;
import com.aliyuncs.vod.model.v20170321.UpdateVodTemplateRequest;
import com.aliyuncs.vod.model.v20170321.UpdateVodTemplateResponse;
/**
* 构建截图模板的配置数据,根据具体设置需求修改对应的参数值
* (以下代码为普通截图完整配置)
* @return
*/
public static JSONObject buildSnapshotTemplateConfig() {
JSONObject templateConfig = new JSONObject();
JSONObject snapshotConfig = new JSONObject();
snapshotConfig.put("Count", "50");
snapshotConfig.put("Interval", "1");
snapshotConfig.put("SpecifiedOffsetTime", "0");
snapshotConfig.put("Width", "200");
snapshotConfig.put("Height", "200");
snapshotConfig.put("FrameType", "normal");
//普通截图配置(与雪碧图原始图配置共用该配置信息)
templateConfig.put("SnapshotConfig", snapshotConfig);
//截图类型(存在雪碧图配置,该类型必须是"SpriteSnapshot",否则为"NormalSnapshot")
templateConfig.put("SnapshotType", "NormalSnapshot");
return templateConfig;
}
/**
* 修改截图模板函数
*/
public static UpdateVodTemplateResponse updateSnapshotVodTemplate(DefaultAcsClient client) throws Exception {
UpdateVodTemplateRequest request = new UpdateVodTemplateRequest();
//设置要修改的模板ID
request.setVodTemplateId("53azf9d796fad9d7b862b2e****");
//模板名称
request.setName("截图模板修改测试");
//截图模板配置数据生成
JSONObject templateConfig = buildSnapshotTemplateConfig();
request.setTemplateConfig(templateConfig.toJSONString());
return client.getAcsResponse(request);
}
/**
* 以下为调用示例
* @param args
* @throws ClientException
*/
public static void main(String[] args) {
DefaultAcsClient client = initVodClient("<Your AccessKeyId>", "<Your AccessKeySecret>");
UpdateVodTemplateResponse response = new UpdateVodTemplateResponse();
try {
//修改截图模板
response = updateSnapshotVodTemplate(client);
//截图模板ID
System.out.println("SnapshotVodTemplateId = " + response.getVodTemplateId());
} catch (Exception e) {
System.out.println("ErrorMessage = " + e.getLocalizedMessage());
}
System.out.println("RequestId = " + response.getRequestId());
}
删除截图模板
调用DeleteVodTemplate接口,完成删除截图模板功能。
接口参数和返回字段请参见DeleteVodTemplate。调用示例如下:
import com.aliyuncs.vod.model.v20170321.DeleteVodTemplateRequest;
import com.aliyuncs.vod.model.v20170321.DeleteVodTemplateResponse;
/**
* 删除截图模板函数
*/
public static DeleteVodTemplateResponse deleteSnapshotVodTemplate(DefaultAcsClient client) throws Exception
DeleteVodTemplateRequest request = new DeleteVodTemplateRequest();
//设置要删除的模板ID
request.setVodTemplateId("53azf9d796fad9d7b862b2e5e5b");
return client.getAcsResponse(request);
}
/**
* 以下为调用示例
* @param args
* @throws ClientException
*/
public static void main(String[] args) {
DefaultAcsClient client = initVodClient("<Your AccessKeyId>", "<Your AccessKeySecret>");
DeleteVodTemplateResponse response = new DeleteVodTemplateResponse();
try {
//删除截图模板
response = deleteSnapshotVodTemplate(client);
} catch (Exception e) {
System.out.println("ErrorMessage = " + e.getLocalizedMessage());
}
System.out.println("RequestId = " + response.getRequestId());
}
查询截图模板列表
调用ListVodTemplate接口,完成查询截图模板列表功能。
接口参数和返回字段请参见ListVodTemplate。调用示例如下:
import com.aliyuncs.vod.model.v20170321.ListVodTemplateRequest;
import com.aliyuncs.vod.model.v20170321.ListVodTemplateResponse;
/**
* 查询截图模板列表函数
*/
public static ListVodTemplateResponse listSnapshotVodTemplate(DefaultAcsClient client) throws Exception {
ListVodTemplateRequest request = new ListVodTemplateRequest();
//模板类型,固定值为Snapshot
request.setTemplateType("Snapshot");
return client.getAcsResponse(request);
}
/**
* 以下为调用示例
* @param args
* @throws ClientException
*/
public static void main(String[] args) {
DefaultAcsClient client = initVodClient("<Your AccessKeyId>", "<Your AccessKeySecret>");
ListVodTemplateResponse response = new ListVodTemplateResponse();
try {
//查询截图模板列表
response = listSnapshotVodTemplate(client);
//打印模板数目
System.out.println("SnapshotVodTemplateId = " + response.getVodTemplateInfoList().size());
} catch (Exception e) {
System.out.println("ErrorMessage = " + e.getLocalizedMessage());
}
System.out.println("RequestId = " + response.getRequestId());
}
查询截图模板
调用GetVodTemplate接口,完成查询截图模板功能。 接口参数和返回字段请参见GetVodTemplate。调用示例如下:
import com.aliyuncs.vod.model.v20170321.GetVodTemplateRequest;
import com.aliyuncs.vod.model.v20170321.GetVodTemplateResponse;
/**
* 查询截图模板函数
*/
public static GetVodTemplateResponse getSnapshotVodTemplate(DefaultAcsClient client) throws Exception {
GetVodTemplateRequest request = new GetVodTemplateRequest();
//设置要查询的模板ID
request.setVodTemplateId("53azf9d796fad9d7b862b2e****");
return client.getAcsResponse(request);
}
/**
* 以下为调用示例
* @param args
* @throws ClientException
*/
public static void main(String[] args) {
DefaultAcsClient client = initVodClient("<Your AccessKeyId>", "<Your AccessKeySecret>");
GetVodTemplateResponse response = new GetVodTemplateResponse();
try {
//查询截图模板
response = getSnapshotVodTemplate(client);
//打印返回信息中的截图模板ID
System.out.println("SnapshotVodTemplateId = " + response.getVodTemplateInfo().getVodTemplateId());
} catch (Exception e) {
System.out.println("ErrorMessage = " + e.getLocalizedMessage());
}
System.out.println("RequestId = " + response.getRequestId());
}
在文档使用中是否遇到以下问题
更多建议
匿名提交