随笔 - 1506  文章 - 1  评论 - 7  阅读 - 58万

通过Java程序调用RTSP拉流协议视频平台EasyNVR程序接口步骤概览

RTSP协议视频平台EasyNVR经过多年的积累,已经是一套成熟且完善的视频平台了,用户可以通过网页直接访问视频监控,也可以通过调用二次开发接口进行二次开发或者集成。下面介绍下Java程序调用EasyNVR程序接口的步骤,供大家参考。

Java程序调用EasyNVR程序的接口步骤

1、首先通过IDEA生成一个SpringBoot项目
2、然后在pom.xml文件中添加一个json的依赖

<!-- json -->
<dependency>
    <groupId>com.alibaba</groupId>
    <artifactId>fastjson</artifactId>
    <version>${json.version}</version>
</dependency>

3、然后添加一个接口,调用EasyNVR接口

@RestController
@RequestMapping
public class TestController {
    @Autowired
    private RestTemplate restTemplate;

    @GetMapping({"/test"})
    public Object easyNVRChannels(@RequestParam("ip") String ip, @RequestParam("username") String username, @RequestParam("password") String password) {
        String login = "http://" + ip + ":10800/api/v1/login?username=" + username + "&password=" + password;
        JSONObject easyNVr = this.restTemplate.getForEntity(login, JSONObject.class, new Object[]{0}).getBody();
        String token = easyNVr.getJSONObject("EasyDarwin").getJSONObject("Body").getString("Token");
        String url = "http://" + ip + ":10800/api/v1/getchannelsconfig";
        JSONObject nVRChannels = this.requestUtils(url, token);
        return nVRChannels;
    }

    public JSONObject requestUtils(String url, String token) {
        HttpHeaders headers = new HttpHeaders();
        headers.setContentType(MediaType.APPLICATION_JSON);
        headers.add("Cookie", "token=" + token);
        MultiValueMap<String, String> map = new LinkedMultiValueMap();
        HttpEntity<MultiValueMap<String, String>> request = new HttpEntity(map, headers);
        String params = "";
        ResponseEntity<JSONObject> response = this.restTemplate.exchange(url, HttpMethod.GET, request, JSONObject.class, params);
        JSONObject nVRChannelsStatus = response.getBody();
        return nVRChannelsStatus;
    }

}

4、最后通过调用java程序的接口,可以获取EasyNVR的接口信息。

之前也为大家介绍过很多EasyNVR平台的相关内容,比如视频广场快照不更新如何排查视频不在线如何排查等,EasyNVR已经支持H265编码视频播放,如果大家有兴趣或有需求,欢迎联系我们。

posted on   EasyNVR  阅读(1901)  评论(0编辑  收藏  举报
编辑推荐:
· 10年+ .NET Coder 心语,封装的思维:从隐藏、稳定开始理解其本质意义
· .NET Core 中如何实现缓存的预热?
· 从 HTTP 原因短语缺失研究 HTTP/2 和 HTTP/3 的设计差异
· AI与.NET技术实操系列:向量存储与相似性搜索在 .NET 中的实现
· 基于Microsoft.Extensions.AI核心库实现RAG应用
阅读排行:
· 10年+ .NET Coder 心语 ── 封装的思维:从隐藏、稳定开始理解其本质意义
· 提示词工程——AI应用必不可少的技术
· 地球OL攻略 —— 某应届生求职总结
· 字符编码:从基础到乱码解决
· SpringCloud带你走进微服务的世界
< 2025年3月 >
23 24 25 26 27 28 1
2 3 4 5 6 7 8
9 10 11 12 13 14 15
16 17 18 19 20 21 22
23 24 25 26 27 28 29
30 31 1 2 3 4 5

点击右上角即可分享
微信分享提示