• 服务调用openfeign


    一添加依赖
       <!--服务调用-->
           <dependency>
                <groupId>org.springframework.cloud</groupId>
                <artifactId>spring-cloud-starter-openfeign</artifactId>
            </dependency>

    二在需要调用的模块中加入被调用模块的接口

    package com.atguigu.eduservice.client;
    
    import com.atguigu.commonutils.R;
    import org.springframework.cloud.openfeign.FeignClient;
    import org.springframework.stereotype.Component;
    import org.springframework.web.bind.annotation.DeleteMapping;
    import org.springframework.web.bind.annotation.PathVariable;
    
    @Component
    @FeignClient(name = "service-vod",fallback = VodFileDegradeFeignClient.class)
    public interface VodeClient {
    
        @DeleteMapping("/eduvod/video/removeAlyVideo/{id}") //加上其完全路径
        public R removeAlyVideo(@PathVariable("id") String id); //@PathVariable注解一定要加上参数名称“id",否则报错
    }

    三注入接口,进行方法调用

    @RestController
    @RequestMapping("/eduservice/video")
    @CrossOrigin
    public class EduVideoController {
    
        @Autowired
        private EduVideoService videoService;
        @Autowired
        private VodeClient vodeClient;
    
        //添加小节
        @PostMapping("addVideo")
        public R addVideo(@RequestBody EduVideo eduVideo) {
            videoService.save(eduVideo);
            return R.ok();
        }
    
        //删除小节
        // TODO 后面这个方法需要完善:删除小节时候,同时把里面视频删除
        @DeleteMapping("{id}")
        public R deleteVideo(@PathVariable String id) {//根据小结id找到视频id
            EduVideo eduVideo = videoService.getById(id);
            String videoSourceId = eduVideo.getVideoSourceId();
            if (!StringUtils.isEmpty(videoSourceId)){
                R result = vodeClient.removeAlyVideo(videoSourceId);//删除视频
                if (result.getCode() == 20001){
                    throw new GuliException(20001,"删除视频失败,荣斗气。。。。。。。");
                }
            }
            videoService.removeById(id);//删除小结
            return R.ok();
        }
    
        //修改小节 TODO
    
    }
  • 相关阅读:
    response.redirect on asp.net is a 302 jump action
    什么吃掉了我的硬盘?
    百度流量统计将会影响搜索的排名
    发邮件 python
    bottle template usage
    想提神,喝中药,咖啡可可没用的
    企业退信的常见问题?
    用UnixBench测试VPS性能 判别是否值得购买
    域名注册及免费空间and企业邮箱
    LNMP一键安装包是什么?
  • 原文地址:https://www.cnblogs.com/lzq210288246/p/13303892.html
Copyright © 2020-2023  润新知