1. 程式人生 > 其它 >對接海康isc遇到的問題及解決方法

對接海康isc遇到的問題及解決方法

問題:

最近在linux上用c++對接海康的isc,在ip、port和請求地址都沒錯的情況下,用海康的OpenAPI介面測試工具也能正常查詢

 

可是在程式中用HTTPUTIL_Post呼叫始終錯誤,使用HTTPUTIL_GetLastStatus獲取狀態碼為404或者10004

    char appkey[] = "";
    char secret[] = "";
    char szUrl[] = "https://ip:443/api/resource/v1/park/parkList";
    char szBody[] = "{}";
    int dataLen = 0;
    char
* data = httpUtil::HTTPUTIL_Post(szUrl, szBody, appkey, secret, 1000, &dataLen);

解決方法:

在安防平臺登陸介面,將portal後刪掉,在portal前加”artemis-”,進入文件中心

在文件中心找到你要使用的介面,可以看到真正的URL與海康開放平臺上的寫的是有些許不同的,在埠號後多了"/artemis"

將程式碼中的url稍作修改

    char appkey[] = "";
    char secret[] = "";
    char szUrl[] = "https://ip:443/artemis/api/resource/v1/park/parkList
"; char szBody[] = "{}"; int dataLen = 0; char* data = httpUtil::HTTPUTIL_Post(szUrl, szBody, appkey, secret, 1000, &dataLen);

執行看看輸出結果,可以看到是能正確獲取資料的