0
点赞
收藏
分享

微信扫一扫

视频处理-视频点播工程创建

霍华德 2022-06-01 阅读 51

创建视频点播微服务工程

创建工程,注意父工程为 ​​service​

视频处理-视频点播工程创建_json

引入依赖

修改总父工程依赖

视频处理-视频点播工程创建_java_02

<properties>
    <java.version>1.8</java.version>
    <mybatis-plus.version>3.0.5</mybatis-plus.version>
    <velocity.version>2.0</velocity.version>
    <swagger.version>2.7.0</swagger.version>
    <jodatime.version>2.10.1</jodatime.version>
    <poi.version>3.17</poi.version>
    <commons-fileupload.version>1.3.1</commons-fileupload.version>
    <commons-io.version>2.6</commons-io.version>
    <httpclient.version>4.5.1</httpclient.version>
    <jwt.version>0.7.0</jwt.version>
    <aliyun-java-sdk-core.version>4.3.3</aliyun-java-sdk-core.version>
    <aliyun-sdk-oss.version>3.10.2</aliyun-sdk-oss.version>
    <aliyun-java-sdk-vod.version>2.15.2</aliyun-java-sdk-vod.version>
    <aliyun-sdk-vod-upload.version>1.4.13</aliyun-sdk-vod-upload.version>
    <fastjson.version>1.2.28</fastjson.version>
    <gson.version>2.8.2</gson.version>
    <json.version>20170516</json.version>
    <commons-dbutils.version>1.7</commons-dbutils.version>
    <canal.client.version>1.1.0</canal.client.version>
    <docker.image.prefix>zx</docker.image.prefix>
    <cloud-alibaba.version>0.2.2.RELEASE</cloud-alibaba.version>
</properties>

<!--锁定依赖的版本-->
<dependencyManagement>
    <dependencies>
        <!--Spring Cloud-->
        <dependency>
            <groupId>org.springframework.cloud</groupId>
            <artifactId>spring-cloud-dependencies</artifactId>
            <version>Hoxton.RELEASE</version>
            <type>pom</type>
            <scope>import</scope>
        </dependency>

        <dependency>
            <groupId>org.springframework.cloud</groupId>
            <artifactId>spring-cloud-alibaba-dependencies</artifactId>
            <version>${cloud-alibaba.version}</version>
            <type>pom</type>
            <scope>import</scope>
        </dependency>
        <!--mybatis-plus 持久层-->
        <dependency>
            <groupId>com.baomidou</groupId>
            <artifactId>mybatis-plus-boot-starter</artifactId>
            <version>${mybatis-plus.version}</version>
        </dependency>

        <!-- velocity 模板引擎, Mybatis Plus 代码生成器需要 -->
        <dependency>
            <groupId>org.apache.velocity</groupId>
            <artifactId>velocity-engine-core</artifactId>
            <version>${velocity.version}</version>
        </dependency>

        <!--swagger-->
        <dependency>
            <groupId>io.springfox</groupId>
            <artifactId>springfox-swagger2</artifactId>
            <version>${swagger.version}</version>
        </dependency>
        <!--swagger ui-->
        <dependency>
            <groupId>io.springfox</groupId>
            <artifactId>springfox-swagger-ui</artifactId>
            <version>${swagger.version}</version>
        </dependency>

        <!--aliyunOSS-->
        <dependency>
            <groupId>com.aliyun.oss</groupId>
            <artifactId>aliyun-sdk-oss</artifactId>
            <version>${aliyun-sdk-oss.version}</version>
        </dependency>

        <!--日期时间工具-->
        <dependency>
            <groupId>joda-time</groupId>
            <artifactId>joda-time</artifactId>
            <version>${jodatime.version}</version>
        </dependency>

        <!--xls-->
        <dependency>
            <groupId>org.apache.poi</groupId>
            <artifactId>poi</artifactId>
            <version>${poi.version}</version>
        </dependency>
        <!--xlsx-->
        <dependency>
            <groupId>org.apache.poi</groupId>
            <artifactId>poi-ooxml</artifactId>
            <version>${poi.version}</version>
        </dependency>

        <!--文件上传-->
        <dependency>
            <groupId>commons-fileupload</groupId>
            <artifactId>commons-fileupload</artifactId>
            <version>${commons-fileupload.version}</version>
        </dependency>

        <!--commons-io-->
        <dependency>
            <groupId>commons-io</groupId>
            <artifactId>commons-io</artifactId>
            <version>${commons-io.version}</version>
        </dependency>

        <!--httpclient-->
        <dependency>
            <groupId>org.apache.httpcomponents</groupId>
            <artifactId>httpclient</artifactId>
            <version>${httpclient.version}</version>
        </dependency>

        <dependency>
            <groupId>com.google.code.gson</groupId>
            <artifactId>gson</artifactId>
            <version>${gson.version}</version>
        </dependency>

        <!-- JWT -->
        <dependency>
            <groupId>io.jsonwebtoken</groupId>
            <artifactId>jjwt</artifactId>
            <version>${jwt.version}</version>
        </dependency>

        <!--aliyun-->
        <dependency>
            <groupId>com.aliyun</groupId>
            <artifactId>aliyun-java-sdk-core</artifactId>
            <version>${aliyun-java-sdk-core.version}</version>
        </dependency>
        <dependency>
            <groupId>com.aliyun</groupId>
            <artifactId>aliyun-java-sdk-vod</artifactId>
            <version>${aliyun-java-sdk-vod.version}</version>
        </dependency>
        <dependency>
            <groupId>com.aliyun</groupId>
            <artifactId>aliyun-sdk-vod-upload</artifactId>
            <version>${aliyun-sdk-vod-upload.version}</version>
        </dependency>
        <dependency>
            <groupId>com.alibaba</groupId>
            <artifactId>fastjson</artifactId>
            <version>${fastjson.version}</version>
        </dependency>
        <dependency>
            <groupId>org.json</groupId>
            <artifactId>json</artifactId>
            <version>${json.version}</version>
        </dependency>

        <dependency>
            <groupId>commons-dbutils</groupId>
            <artifactId>commons-dbutils</artifactId>
            <version>${commons-dbutils.version}</version>
        </dependency>

        <dependency>
            <groupId>com.alibaba.otter</groupId>
            <artifactId>canal.client</artifactId>
            <version>${canal.client.version}</version>
        </dependency>
    </dependencies>
</dependencyManagement>

添加本地依赖,添加方式如下

mvn install:install-file -DgroupId=com.aliyun -DartifactId=aliyun-sdk-vod-upload -Dversion=1.4.13 -Dpackaging=jar -Dfile=aliyun-java-vod-upload-1.4.13.jar

视频处理-视频点播工程创建_ide_03

视频处理-视频点播工程创建_Project_04

service_vod 模块依赖如下

<dependencies>
    <dependency>
        <groupId>com.aliyun</groupId>
        <artifactId>aliyun-java-sdk-core</artifactId>
    </dependency>
    <dependency>
        <groupId>com.aliyun.oss</groupId>
        <artifactId>aliyun-sdk-oss</artifactId>
    </dependency>
    <dependency>
        <groupId>com.aliyun</groupId>
        <artifactId>aliyun-java-sdk-vod</artifactId>
    </dependency>
    <dependency>
        <groupId>com.alibaba</groupId>
        <artifactId>fastjson</artifactId>
        <version>1.2.28</version>
    </dependency>
    <dependency>
        <groupId>org.json</groupId>
        <artifactId>json</artifactId>
        <version>20170516</version>
    </dependency>
    <dependency>
        <groupId>com.google.code.gson</groupId>
        <artifactId>gson</artifactId>
        <version>2.8.2</version>
    </dependency>
    <dependency>
        <groupId>joda-time</groupId>
        <artifactId>joda-time</artifactId>
    </dependency>
    <dependency>
        <groupId>com.aliyun</groupId>
        <artifactId>aliyun-sdk-vod-upload</artifactId>
    </dependency>
</dependencies>

在 ​​resources​​​ 当中创建配置文件 ​​applicaiton.yml​

# application-dev.yml
server:
  port: 8003

logging:
  pattern:
    console: "%clr(%5p) %clr(-){faint} %clr(%-80.80logger{79}){cyan} %clr(:) %m%n"

spring:
  application:
    name: service-vod
  profiles:
    active: dev
  servlet:
    multipart:
      max-file-size: 1024MB
      max-request-size: 1024MB

# 定义oss相关属性
aliyun:
  keyid: LTAI4GH19ep2P8caxW2E2N6A
  keysecret: NAmWiBmKXofw7hs4JRcx7SLhF1MN6P

如上配置文件当中的 ​​keyid​​​ 和 ​​keysecret​​ 是我们之前做 OSS 配置文件当中的自行拷贝自己的即可如下图

视频处理-视频点播工程创建_ide_05

在 service_vod 工程当中创建 ​​top.it6666.service_vod​​ 包在该包下创建启动类

/**
 * @author BNTang
 */
@SpringBootApplication(exclude&nbsp;=&nbsp;DataSourceAutoConfiguration.class)
@ComponentScan(basePackages&nbsp;=&nbsp;{&quot;top.it6666&quot;})
public&nbsp;class&nbsp;VodApplication&nbsp;{
&nbsp;&nbsp;&nbsp;&nbsp;public&nbsp;static&nbsp;void&nbsp;main(String[]&nbsp;args)&nbsp;{
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;SpringApplication.run(VodApplication.class,&nbsp;args);
&nbsp;&nbsp;&nbsp;&nbsp;}
}

创建微服务点播工具类,在 utils 包中创建配置文件读取常量工具类 ​​VodConstant​

/**
 * @author BNTang
 * @version 1.0
 * @project video_parent
 * @description 配置文件读取常量工具类
 * @since Created in 2021/4/17 22:01
 **/
@Component
public&nbsp;class&nbsp;VodConstant&nbsp;implements&nbsp;InitializingBean&nbsp;{

&nbsp;&nbsp;&nbsp;&nbsp;@Value(&quot;${aliyun.keyid}&quot;)
&nbsp;&nbsp;&nbsp;&nbsp;private&nbsp;String&nbsp;keyId;

&nbsp;&nbsp;&nbsp;&nbsp;@Value(&quot;${aliyun.keysecret}&quot;)
&nbsp;&nbsp;&nbsp;&nbsp;private&nbsp;String&nbsp;keySecret;

&nbsp;&nbsp;&nbsp;&nbsp;public&nbsp;static&nbsp;String&nbsp;ACCESS_KEY_ID;
&nbsp;&nbsp;&nbsp;&nbsp;public&nbsp;static&nbsp;String&nbsp;ACCESS_KEY_SECRET;

&nbsp;&nbsp;&nbsp;&nbsp;@Override
&nbsp;&nbsp;&nbsp;&nbsp;public&nbsp;void&nbsp;afterPropertiesSet()&nbsp;{
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;ACCESS_KEY_ID&nbsp;=&nbsp;keyId;
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;ACCESS_KEY_SECRET&nbsp;=&nbsp;keySecret;
&nbsp;&nbsp;&nbsp;&nbsp;}
}

在 utils 包中创建阿里云点播初始化工具类

/**
 * @author BNTang
 * @version 1.0
 * @project video_parent
 * @description 阿里云点播初始化工具类
 * @since Created in 2021/4/17 22:03
 **/
public&nbsp;class&nbsp;ALiYunVodSdkUtils&nbsp;{
&nbsp;&nbsp;&nbsp;&nbsp;public&nbsp;static&nbsp;DefaultAcsClient&nbsp;initVodClient(String&nbsp;accessKeyId,&nbsp;String&nbsp;accessKeySecret)&nbsp;throws&nbsp;ClientException&nbsp;{
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;// 点播服务接入区域 不能修改
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;String&nbsp;regionId&nbsp;=&nbsp;&quot;cn-shanghai&quot;;
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;DefaultProfile&nbsp;profile&nbsp;=&nbsp;DefaultProfile.getProfile(
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;regionId,
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;accessKeyId,
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;accessKeySecret);
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;return&nbsp;new&nbsp;DefaultAcsClient(profile);
&nbsp;&nbsp;&nbsp;&nbsp;}
}

视频处理-视频点播工程创建_json_06

请求接口与业务

在 Controller 包下创建 VodController

/**
 * @author BNTang
 * @version 1.0
 * @project video_parent
 * @description 视频点播与上传请求接口与业务
 * @since Created in 2021/4/17 22:06
 **/
@RestController
@RequestMapping(&quot;/service_vod/vod&quot;)
@CrossOrigin
@Api(tags&nbsp;=&nbsp;&quot;视频组&quot;)
public&nbsp;class&nbsp;VodController&nbsp;{
&nbsp;&nbsp;&nbsp;&nbsp;@Resource
&nbsp;&nbsp;&nbsp;&nbsp;private&nbsp;VodService&nbsp;vodService;

&nbsp;&nbsp;&nbsp;&nbsp;/**
     * <b>
     * 视频上传
     * </b>
     */
&nbsp;&nbsp;&nbsp;&nbsp;@ApiOperation(value&nbsp;=&nbsp;&quot;视频上传&quot;)
&nbsp;&nbsp;&nbsp;&nbsp;@PostMapping(&quot;/upload&quot;)
&nbsp;&nbsp;&nbsp;&nbsp;public&nbsp;ResponseResult&nbsp;uploadVideo(@RequestParam(&quot;file&quot;)&nbsp;MultipartFile&nbsp;file)&nbsp;{
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;String&nbsp;videoId&nbsp;=&nbsp;vodService.uploadVideo(file);
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;return&nbsp;ResponseResult.ok().message(&quot;视频上传成功!&quot;).data(&quot;videoId&quot;,&nbsp;videoId);
&nbsp;&nbsp;&nbsp;&nbsp;}

&nbsp;&nbsp;&nbsp;&nbsp;/**
     * <b>
     * 删除视频
     * </b>
     */
&nbsp;&nbsp;&nbsp;&nbsp;@ApiOperation(value&nbsp;=&nbsp;&quot;删除视频&quot;)
&nbsp;&nbsp;&nbsp;&nbsp;@PostMapping(&quot;/delete-vod/{videoId}&quot;)
&nbsp;&nbsp;&nbsp;&nbsp;public&nbsp;ResponseResult&nbsp;removeVideo(@PathVariable&nbsp;String&nbsp;videoId)&nbsp;{
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;vodService.deleteVideo(videoId);
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;return&nbsp;ResponseResult.ok().message(&quot;视频删除成功!&quot;);
&nbsp;&nbsp;&nbsp;&nbsp;}
}

上传业务与删除业务,在 service 包下创建 ​​VodService​

视频处理-视频点播工程创建_Project_07

/**
 * @author BNTang
 * @version 1.0
 * @project video_parent
 * @description 视频组业务
 * @since Created in 2021/4/17 22:10
 **/
public&nbsp;interface&nbsp;VodService&nbsp;{

&nbsp;&nbsp;&nbsp;&nbsp;/**
     * <p>
     * 上传视频
     * </p>
     *
     * @param file 视频文件
     * @return 上传结果
     */
&nbsp;&nbsp;&nbsp;&nbsp;String&nbsp;uploadVideo(MultipartFile&nbsp;file);

&nbsp;&nbsp;&nbsp;&nbsp;/**
     * <p>
     * 根据 videoId 删除对应的视频
     * </p>
     *
     * @param videoId 删除结果
     */
&nbsp;&nbsp;&nbsp;&nbsp;void&nbsp;deleteVideo(String&nbsp;videoId);
}

紧接着在 service 包当中创建 impl 包在创建对应的 ​​VodServiceImpl​​ 实现类如下

视频处理-视频点播工程创建_json_08

/**
 * @author BNTang
 * @version 1.0
 * @project video_parent
 * @description 视频组业务实现类
 * @since Created in 2021/4/17 22:13
 **/
@Service
public&nbsp;class&nbsp;VodServiceImpl&nbsp;implements&nbsp;VodService&nbsp;{

&nbsp;&nbsp;&nbsp;&nbsp;@Override
&nbsp;&nbsp;&nbsp;&nbsp;public&nbsp;String&nbsp;uploadVideo(MultipartFile&nbsp;file)&nbsp;{
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;try&nbsp;{
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;// 获取文件输入流
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;InputStream&nbsp;inputStream&nbsp;=&nbsp;file.getInputStream();

&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;// 获取文件名
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;String&nbsp;originalFilename&nbsp;=&nbsp;Optional.ofNullable(file.getOriginalFilename()).orElse(&quot;&quot;);

&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;//截取标题
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;String&nbsp;title&nbsp;=&nbsp;originalFilename.substring(0,&nbsp;originalFilename.lastIndexOf(&quot;.&quot;));

&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;// 获取上传请求
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;UploadStreamRequest&nbsp;request&nbsp;=&nbsp;new&nbsp;UploadStreamRequest(
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;VodConstant.ACCESS_KEY_ID,
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;VodConstant.ACCESS_KEY_SECRET,
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;title,&nbsp;originalFilename,&nbsp;inputStream);

&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;// 开始上传
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;UploadVideoImpl&nbsp;uploader&nbsp;=&nbsp;new&nbsp;UploadVideoImpl();

&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;// 上传完毕后,服务器给于响应
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;UploadStreamResponse&nbsp;response&nbsp;=&nbsp;uploader.uploadStream(request);

&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;// 如果设置回调URL无效,不影响视频上传,可以返回VideoId同时会返回错误码。
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;// 其他情况上传失败时,VideoId为空,此时需要根据返回错误码分析具体错误原因
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;String&nbsp;videoId&nbsp;=&nbsp;response.getVideoId();

&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;if&nbsp;(!response.isSuccess())&nbsp;{
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;String&nbsp;errorMessage&nbsp;=
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&quot;阿里云上传错误:&quot;&nbsp;+&nbsp;&quot;code:&quot;&nbsp;+&nbsp;response.getCode()&nbsp;+&nbsp;&quot;,&nbsp;message:&quot;&nbsp;+&nbsp;response.getMessage();
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;if&nbsp;(StringUtils.isEmpty(videoId))&nbsp;{
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;throw&nbsp;new&nbsp;BnTangException(20001,&nbsp;errorMessage);
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;}
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;}
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;return&nbsp;videoId;
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;}&nbsp;catch&nbsp;(IOException&nbsp;e)&nbsp;{
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;throw&nbsp;new&nbsp;BnTangException(20001,&nbsp;&quot;vod&nbsp;服务上传失败&quot;);
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;}
&nbsp;&nbsp;&nbsp;&nbsp;}

&nbsp;&nbsp;&nbsp;&nbsp;@Override
&nbsp;&nbsp;&nbsp;&nbsp;public&nbsp;void&nbsp;deleteVideo(String&nbsp;videoId)&nbsp;{
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;try&nbsp;{
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;// 获取客户端请求
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;DefaultAcsClient&nbsp;client&nbsp;=&nbsp;ALiYunVodSdkUtils.initVodClient(
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;VodConstant.ACCESS_KEY_ID,
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;VodConstant.ACCESS_KEY_SECRET);

&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;// 创建删除请求
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;DeleteVideoRequest&nbsp;request&nbsp;=&nbsp;new&nbsp;DeleteVideoRequest();

&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;// 设置要删除的视频ID
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;request.setVideoIds(videoId);

&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;// 删除请求后服务器给予的响应
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;client.getAcsResponse(request);
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;}&nbsp;catch&nbsp;(ClientException&nbsp;e)&nbsp;{
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;throw&nbsp;new&nbsp;BnTangException(20001,&nbsp;&quot;视频删除失败&quot;);
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;}
&nbsp;&nbsp;&nbsp;&nbsp;}
}


举报

相关推荐

0 条评论