删除小节删除阿里云视频

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)查看阿里云视频点播服务中的视频是否被删除。

相关推荐
YuTaoShao1 小时前
【LeetCode 热题 100】56. 合并区间——排序+遍历
java·算法·leetcode·职场和发展
程序员张31 小时前
SpringBoot计时一次请求耗时
java·spring boot·后端
llwszx4 小时前
深入理解Java锁原理(一):偏向锁的设计原理与性能优化
java·spring··偏向锁
云泽野5 小时前
【Java|集合类】list遍历的6种方式
java·python·list
二进制person5 小时前
Java SE--方法的使用
java·开发语言·算法
小阳拱白菜6 小时前
java异常学习
java
程序员岳焱7 小时前
Java 与 MySQL 性能优化:Java 实现百万数据分批次插入的最佳实践
后端·mysql·性能优化
FrankYoou7 小时前
Jenkins 与 GitLab CI/CD 的核心对比
java·docker
麦兜*8 小时前
Spring Boot启动优化7板斧(延迟初始化、组件扫描精准打击、JVM参数调优):砍掉70%启动时间的魔鬼实践
java·jvm·spring boot·后端·spring·spring cloud·系统架构
KK溜了溜了8 小时前
JAVA-springboot 整合Redis
java·spring boot·redis