删除小节删除阿里云视频

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

相关推荐
桦说编程5 小时前
Guava 迭代器增强类介绍
java·后端·设计模式
235166 小时前
【JVM】Java为啥能跨平台?JDK/JRE/JVM的关系?
java·开发语言·jvm·spring boot·后端·spring·职场和发展
courtfu6 小时前
Plugin ‘mysql_native_password‘ is not loaded`
java·后端
枫子有风6 小时前
Go语言流程控制
android·java·golang
上进小菜猪6 小时前
测试自动化Replay:让数据库迁移测试回归真实场景的一把“利器”
后端
Python私教6 小时前
FastAPI × SQLAlchemy 2.0 Async:从“能跑”到“可压测”的完整工程实践
后端
小裕哥略帅6 小时前
订单管理--实时算出在途数量、收货数量、到货数量、已发货数量和未发货数量
java·开发语言
Python私教6 小时前
FastAPI × Loguru:从“能跑”到“可运维”的日志实战
后端
Dxxyyyy7 小时前
零基础学JAVA--Day27(注释+异常+异常处理方法)
java·开发语言
Craaaayon7 小时前
如何选择两种缓存更新策略(写缓存+异步写库;写数据库+异步更新缓存)
java·数据库·redis·后端·缓存·mybatis