国内两大摄像头厂商“大华”、“海康威视”,旗下摄像头均支持ONVIF,但是两个厂家对ONVIF的理解有一定的相差。最近在做机器人视觉的时候,选型的过程中才有了4款摄像头(大华、海康各两款)。
记录一下开发过程中遇到的坑:
两家都支持SOAP的WS-Username Token和Digest鉴权,但是...(坑来了),大华在进行WS-Username Token鉴权时,会严格检查created域,当客户端与IPC的时间跨度相差比较大时,大华这边直接“401 Unauthorized”。相比之下海康可以顺利通过。这里就形成了一个隐形的死循环问题:由于摄像头刚刚初始化并上电,时间是错误,那么在进行下一步操作前,得先同步时间...问题就在这里,时间不对,要同步时间 => 要同步时间,就得访问设置时间的SOAP接口 => 要调用SOAP,就要鉴权 => 时间不对,鉴权失败......

MMP,折腾了1个星期,10+天没更新,上周末突然发现校时的SOAP接口Digest方式鉴权时可以通过的。于是只好曲线救G。
用 Digest 鉴权同步时间,其他接口继续使用 WS-Username Token

标签: none

评论已关闭