0
点赞
收藏
分享

微信扫一扫

变倍镜头参数详解

就是耍帅 2024-10-11 阅读 41

我这个是带header头的请求,因为在header头中需要加入账号密码请求

  public static function sendRequest($method, $url, $data = null, $headers = [])
    {
        $ch = curl_init();

        curl_setopt($ch, CURLOPT_URL, $url);
        curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);

        if ($method === 'POST' || $method === 'PUT' || $method === 'PATCH') {
            curl_setopt($ch, CURLOPT_POSTFIELDS, $data);
            curl_setopt($ch, CURLOPT_CUSTOMREQUEST, $method);
        } else {
            curl_setopt($ch, CURLOPT_CUSTOMREQUEST, $method);
        }
        $defaultHeaders = [
            'Content-Type' => 'application/json; charset=utf-8'
        ];

        // 合并默认请求头和自定义请求头
        $allHeaders = array_merge($defaultHeaders, $headers);
        $headerArray = [];
        foreach ($allHeaders as $key => $value) {
            $headerArray[] = "$key: $value";
        }

        curl_setopt($ch, CURLOPT_HTTPHEADER, $headerArray);
//        if (!empty($headers)) {
//            $headerArray = [];
//            foreach ($headers as $key => $value) {
//                $headerArray[] = "$key: $value";
//            }
//            curl_setopt($ch, CURLOPT_HTTPHEADER, $headerArray);
//        }
        $response = curl_exec($ch);
        $httpCode = curl_getinfo($ch, CURLINFO_HTTP_CODE);

        if ($response === false) {
            $error = curl_error($ch);
            curl_close($ch);
            return ['error' => $error, 'http_code' => null];
        } else {
            curl_close($ch);
            $data = json_decode($response, true);
            return ['data' => $data, 'http_code' => $httpCode];
        }
    }

参数说明:

$method     请求方法POST/PUT/GET/PATCH
$url        请求地址
$$data      请求数据   这里注意,请自行转换json  
举报

相关推荐

0 条评论