php对接中通SDK问题

记一次对接中通接口遇到的问题。

中通SDK是4年前的了,就这他们技术人员说能拉取的都是最新的,囧。

1.修改ZopHttpUtil.php中的请求方式

public function post($url, $headers, $querystring)//$timeout
    {
        $ch = curl_init();
        curl_setopt($ch, CURLOPT_URL, $url);//设置链接
        curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);//设置是否返回信息
        curl_setopt($ch, CURLOPT_HTTPHEADER, $headers);//设置HTTP头
        curl_setopt($ch, CURLOPT_POST, 1);//设置为POST方式
        //curl_setopt($ch, CURLOPT_TIMEOUT_MS, $timeout);//无用,注释了
        curl_setopt($ch, CURLOPT_POSTFIELDS, $querystring);
        curl_setopt($ch, CURLOPT_HTTP_VERSION, CURL_HTTP_VERSION_1_0); //强制协议为1.0
        curl_setopt($ch, CURLOPT_IPRESOLVE, CURL_IPRESOLVE_V4 ); //强制使用IPV4协议解析域名
        $response = curl_exec($ch);
        if (curl_errno($ch)) {
            // 输出错误信息
            echo 'cURL Error: ' . curl_error($ch);
        }
        return $response;
    }

2.修改ZopClient.php

46,57行,将调用post请求方法的最后一个参数去掉

return $this->httpClient->post($url, $headers, http_build_query($fixedParams));//, 2000  46行
return $this->httpClient->post($url, $headers, $body);//, 2000  57行

PS:不想用他们的SDK的话,我这里自己写了一个生成中通签名的方法,需要的话可以自己测试下,我没用 - -

 //中通签名方法
   protected function generateSignature($params,$appSecret){
        // 步骤1: 待签名字符串 = 请求参数 + appSecret
        $sign = $params . $appSecret;
        // 步骤2: utf8Bytes = 使用 UTF-8 编码成 byte 数组
        $utf8Bytes = mb_convert_encoding($sign, 'UTF-8');
        // 步骤3: md5bytes = md5(utf8Bytes)
        $md5Bytes = md5($utf8Bytes);
        // 步骤4: x-datadigest = base64Str(md5bytes)
        $xDataDigest = base64_encode($md5Bytes);
        return $xDataDigest;
    }

CSDN Java对接海康SDK是为了实现将海康SDK与Java语言相结合,从而实现一些特定的功能和需求。海康SDK是海康威视公司开发的一套用于监控摄像头、视频录像等监控设备的开发工具包。 首先,需要在CSDN平台上找到与Java对接海康SDK相关的教程或者相关的开源项目。CSDN是一个IT技术社区平台,上面有大量的技术文章和教程,可以提供对接海康SDK的指导和案例。 然后,按照教程或者案例中的步骤进行操作。一般来说,需要先下载并安装海康SDK开发包,然后在Java项目中引入相关的库文件。接着,根据具体的需求编写Java代码,调用海康SDK提供的函数和接口实现所需的功能。 在对接过程中,可能会遇到一些问题和挑战,例如SDK的版本兼容性、接口调用参数的设置和调试等。此时,可以查阅相关的文档和资料,或者在CSDN社区中发布问题,与其他开发者交流和讨论,共同解决问题对接海康SDK后,可以通过Java代码实现与海康监控设备的通信,例如获取实时视频流、控制云台转动、查询和回放录像等功能。这对于需要在Java应用中集成摄像头监控的项目或者需要自动化控制摄像头的场景非常有用。 总之,CSDN Java对接海康SDK是一种使用CSDN平台上的Java技术资源来实现与海康SDK对接的方法。通过参考相关的教程和案例,编写Java代码,可以实现与海康监控设备的通信和控制,以满足特定的需求。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值