2020-11-12

海康威视http接口测试及趟坑

测试http接口

通过测试发现,海康威视提供了两类http接口,一种是基于PSIA,另一种是基于CGI的接口(至少海康官网有这文档),但是测试时候其实很多都不能直接用,下面就说一下自己的测试结果。

ISAPI

在ISAPI协议接口下,通过查询海康的接口返回的xml数据可以发现这个接口下所支持的资源列表,如下

<ResourceList xmlns="http://www.hikvision.com/ver20/XMLSchema" version="2.0">
    <Resource version="1.0">
        <name>index</name>
        <version>1.0</version>
        <type>resource</type>
    </Resource>
    <Resource version="1.0">
        <name>indexr</name>
        <version>1.0</version>
        <type>resource</type>
    </Resource>
    <Resource version="1.0">
        <name>description</name>
        <version>1.0</version>
        <type>resource</type>
    </Resource>
    <Resource version="1.0">
        <name>System</name>
        <version>1.0</version>
        <type>service</type>
    </Resource>
    <Resource version="1.0">
        <name>Security</name>
        <version>1.0</version>
        <type>service</type>
    </Resource>
    <Resource version="1.0">
        <name>Event</name>
        <version>1.0</version>
        <type>service</type>
    </Resource>
    <Resource version="1.0">
        <name>Streaming</name>
        <version>1.0</version>
        <type>service</type>
    </Resource>
    <Resource version="1.0">
        <name>Snapshot</name>
        <version>1.0</version>
        <type>service</type>
    </Resource>
    <Resource version="1.0">
        <name>PTZCtrl</name>
        <version>1.0</version>
        <type>service</type>
    </Resource>
    <Resource version="1.0">
        <name>ContentMgmt</name>
        <version>1.0</version>
        <type>service</type>
    </Resource>
    <Resource version="1.0">
        <name>Smart</name>
        <version>1.0</version>
        <type>service</type>
    </Resource>
    <Resource version="1.0">
        <name>WLAlarm</name>
        <version>1.0</version>
        <type>service</type>
    </Resource>
    <Resource version="1.0">
        <name>Image</name>
        <version>1.0</version>
        <type>service</type>
    </Resource>
    <Resource version="1.0">
        <name>Traffic</name>
        <version>1.0</version>
        <type>service</type>
    </Resource>
    <Resource version="1.0">
        <name>ITC</name>
        <version>1.0</version>
        <type>service</type>
    </Resource>
    <Resource version="1.0">
        <name>MegaPlatform</name>
        <version>1.0</version>
        <type>service</type>
    </Resource>
    <Resource version="1.0">
        <name>GIS</name>
        <version>1.0</version>
        <type>service</type>
    </Resource>
    <Resource version="1.0">
        <name>Intelligent</name>
        <version>1.0</version>
        <type>service</type>
    </Resource>
    <Resource version="1.0">
        <name>MasterSlaveTracking</name>
        <version>1.0</version>
        <type>service</type>
    </Resource>
    <Resource version="1.0">
        <name>Compass</name>
        <version>1.0</version>
        <type>service</type>
    </Resource>
    <Resource version="1.0">
        <name>Panorama</name>
        <version>1.0</version>
        <type>service</type>
    </Resource>
    <Resource version="1.0">
        <name>Judicial</name>
        <version>1.0</version>
        <type>service</type>
    </Resource>
    <Resource version="1.0">
        <name>OpenPlatform</name>
        <version>1.0</version>
        <type>service</type>
    </Resource>
    <Resource version="1.0">
        <name>OrgPreview</name>
        <version>1.0</version>
        <type>service</type>
    </Resource>
    <Resource version="1.0">
        <name>Custom</name>
        <version>1.0</version>
        <type>service</type>
    </Resource>
</ResourceList>

需要我们注意的是这个列表下的请求都需要满足http://ip:[port]/ISAPI/[resources]的格式。

海康比较坑的地方

通过查看海康提供的CGI和PSIA文档,我们可以清楚的看到它下面支持System、Network、IO、Video、Audio、Two way auddio、Serial、Security、Streaming、Motion Detection、Event、PTZ,但是文档中所给出的接口都无法使用,准确说不是不能使用,而是没有给出完整的资源url,需要结合PSIA文档来看。通过测试以及查看网上一位老兄给出的海康http能力测试文档,总结出几乎所有的接口都需要加/ISAPI/这个资源前缀(至少我用的这个型号是这样)。

接口总结

注意,这里只是点一点比较坑的接口,这里只是趟一趟坑,需要哪些接口、具体更详细的使用请参考海康的CGI英文文档,能够让你遇到这种需求时候,能够作个正确的参考。

PTZCtrl

url: /ISAPI/PTZCtrl/channels/101/absolute

接口描述:控制球机的绝对坐标接口。

参数:

​ 1.elevation: 高度 每100对应于T增加10°,也就是向下10°,T最多90°,也就是说对应0-900(这部分实际可以在海康摄像头自带后台中调节,但是最宽的范围也就-15°-90°)

​ 2.azimuth: 经纬度 0对应于P的0,每增加100等于顺时针旋转10°,旋转度数相对于初始零点,可以旋转360°,故值的范围就是0-3600

​ 3.absoluteZoom: 放缩倍数 0-230 对应于摄像头0-23级光学放缩倍数(具体看你自己球机参数)


注:接下来所写的所有接口都是System下的,但是在海康文档中却将它与System并写一块且没有给出实际的资源地址。下面是经过测试后的资源地址。

Video

url: /ISPAI/System/Video/[resources]

Audio

url: /ISPAI/System/Audio/[resources]

Serial

url: /ISAPI/System/Serial/[resources]

Network

url: /ISAPI/System/Network/[resources]

IO

url: /ISAPI/System/IO/[resources]

最后

欢迎各位批评指正以及交流。

  • 2
    点赞
  • 9
    收藏
    觉得还不错? 一键收藏
  • 3
    评论
评论 3
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值