使用cpp-httplib 进行HTTPS 对接开发
cpp-httplib
A C++ header-only HTTP/HTTPS server and client library
项目地址:https://gitcode.com/gh_mirrors/cp/cpp-httplib
免费下载资源
·
最近对接几家 不同的nvr厂商,有华为 金山立 大华 海康等等。大多数都是直接提供的sdk
直接把so库集成在程序里面即可
唯独华为提供的是HTTP接口 也就是所谓的RESTful方式
但是不是普通的http方式 而是 https方式
之前所有的关于Web服务的交互都是基于http的 而不是https
也没啥https的经验,然后就网上搜了下需要用到openssl 直接把openssl下载下来 编译成so库
然后自己直接写了个socket 设置对应的头 返现Get是可以的
但是Post不行 ,
华为的所有所有的HTTPS接口除了登录的之外 其他的都需要附带一个sessionid
而这个sessionid是根据登录时候从服务器返回过来的一个cookie我们需要自己保存这个cookie然后之后的每次请求都把这个cookie带上
然后问了下同事 github上 所有个http-lib的支持 https
就直接下下来了 直接一个h文件 直接引入这个头文件就可以
后来 遇到问题为了便于调试 给拆分成一个头文件 一个cpp文件了
由于我们是使用https的方式 需要依赖于openssl的库
makefile需要把这两个库文件加进来
同时需要 打开这个宏 CPPHTTPLIB_OPENSSL_SUPPORT
之后 引入头文件 https就可以正常用了
有的接口需要等待的时间比较长 如果不设置超时时间的话
会导致post返回的 对象为空
登录的部分:
设置cookie 然后keepalive
获取相机设备
设置osd
退出登录:
GitHub 加速计划 / cp / cpp-httplib
12.46 K
2.22 K
下载
A C++ header-only HTTP/HTTPS server and client library
最近提交(Master分支:1 个月前 )
ed0719f2 - 1 个月前
6a848b1a
TLS 1. is deprecated: https://www.ietf.org/rfc/rfc8996.html 1 个月前
更多推荐
已为社区贡献3条内容
所有评论(0)