删除小节删除阿里云视频

1、service-vod服务进行注册

同上小节的service-edu步骤。

2、在service_vod创建删除视频接口

(1)官方文档:服务端sdk->javaSDK->媒资管理 (2)在VideoAdminController添加删除视频的接口

java 复制代码
@ApiOperation(value = "删除视频")
    @DeleteMapping("{videoId}")
    public R deleteVideoAliyun(@PathVariable String videoId){
        try {
            //1创建初始化对象
            DefaultAcsClient client = AliyunVodSDKUtils.initVodClient("你自己的阿里云keyId", "你自己的阿里云keySercet");
            //2创建删除视频的请求
            DeleteVideoRequest request = new DeleteVideoRequest();
            //3向请求中设置视频id,支持传入多个视频ID,多个用逗号分隔
            request.setVideoIds(videoId);
            //4调用初始化对象方法
            client.getAcsResponse(request);
            return R.ok();
        } catch (ClientException e) {
            return R.error();
        }
    }

3、实现服务调用,feign

需求:service-edu调用service-vod删除视频接口

(1)在service模块添加依赖

(2)在调用端service-edu启动类添加注解

(3)在service-edu创建interface接口,定义调用方法

第一步:创建接口。 第二步:在接口定义操作方法。 第三步:在接口添加注解,指明要调用的服务名称。

java 复制代码
@FeignClient("service-vod")//服务名就是配置文件里配置的
@Component
public interface VodClient {
    //定义操作方法
    //url必须完整
    //@PathVariable后面定义参数名称
    @DeleteMapping("/eduvod/video/{videoId}")
    public R deleteVideoAliyun(@PathVariable("videoId") String videoId);
}

(4)在EduVideoController实现删除小节删除视频的功能

java 复制代码
@ApiOperation(value = "删除小节信息")
@DeleteMapping("{id}")
public R deleteVideo(@PathVariable String id){
    //根据小节id查询视频id
    EduVideo eduVideo = videoService.getById(id);
    String videoSourceId = eduVideo.getVideoSourceId();
    //判断视频id不为空
    if(!StringUtils.isEmpty(videoSourceId)){
        vodClient.deleteVideoAliyun(videoSourceId);
    }
    videoService.removeById(id);
    return R.ok();
}

(5)查看阿里云视频点播服务中的视频是否被删除。

相关推荐
reiraoy9 分钟前
缓存解决方案
java
安之若素^24 分钟前
启用不安全的HTTP方法
java·开发语言
ruanjiananquan9930 分钟前
c,c++语言的栈内存、堆内存及任意读写内存
java·c语言·c++
chuanauc1 小时前
Kubernets K8s 学习
java·学习·kubernetes
一头生产的驴1 小时前
java整合itext pdf实现自定义PDF文件格式导出
java·spring boot·pdf·itextpdf
YuTaoShao1 小时前
【LeetCode 热题 100】73. 矩阵置零——(解法二)空间复杂度 O(1)
java·算法·leetcode·矩阵
zzywxc7871 小时前
AI 正在深度重构软件开发的底层逻辑和全生命周期,从技术演进、流程重构和未来趋势三个维度进行系统性分析
java·大数据·开发语言·人工智能·spring
YuTaoShao4 小时前
【LeetCode 热题 100】56. 合并区间——排序+遍历
java·算法·leetcode·职场和发展
程序员张34 小时前
SpringBoot计时一次请求耗时
java·spring boot·后端
llwszx7 小时前
深入理解Java锁原理(一):偏向锁的设计原理与性能优化
java·spring··偏向锁