Php curl手术无反应,邮递员成功

Php curl手术无反应,邮递员成功,php,curl,yii2,Php,Curl,Yii2,下面的一个我与邮递员一起测试,它返回了响应,但当我在PHP中检查时,它没有返回任何响应。请帮助我 cURL文件创建: $curl_file = curl_file_create(\Yii::$app->basePath.'/web/uploads/'.$uploadedFile->name,'pbix',$uploadedFile->baseName); $params = ['file' => $curl_file]; $curl = curl

下面的一个我与邮递员一起测试,它返回了响应,但当我在PHP中检查时,它没有返回任何响应。请帮助我

cURL文件创建:

$curl_file = curl_file_create(\Yii::$app->basePath.'/web/uploads/'.$uploadedFile->name,'pbix',$uploadedFile->baseName);
            $params = ['file' => $curl_file];
$curl = curl_init();
        curl_setopt_array($curl, array(
          CURLOPT_URL => "https://***.***.**.***/v1.0/collections/**/workspaces/**/***?datasetDisplayName=new test",
          CURLOPT_RETURNTRANSFER => true,
          CURLOPT_ENCODING => "",
          CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
          CURLOPT_CUSTOMREQUEST => 'POST',
          CURLOPT_POSTFIELDS => $params,
          CURLOPT_HTTPHEADER => array(
            "authorization: key",
          ),
        ));
        curl_setopt($curl, CURLOPT_SSL_VERIFYHOST, 0);
        curl_setopt($curl, CURLOPT_SSL_VERIFYPEER, 0);

        $response = curl_exec($curl);
        $err = curl_error($curl);

        curl_close($curl);
        if ($err) {
          echo "cURL Error #:" . $err;
        } else {
          echo $response;
        }
卷曲过程:

$curl_file = curl_file_create(\Yii::$app->basePath.'/web/uploads/'.$uploadedFile->name,'pbix',$uploadedFile->baseName);
            $params = ['file' => $curl_file];
$curl = curl_init();
        curl_setopt_array($curl, array(
          CURLOPT_URL => "https://***.***.**.***/v1.0/collections/**/workspaces/**/***?datasetDisplayName=new test",
          CURLOPT_RETURNTRANSFER => true,
          CURLOPT_ENCODING => "",
          CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
          CURLOPT_CUSTOMREQUEST => 'POST',
          CURLOPT_POSTFIELDS => $params,
          CURLOPT_HTTPHEADER => array(
            "authorization: key",
          ),
        ));
        curl_setopt($curl, CURLOPT_SSL_VERIFYHOST, 0);
        curl_setopt($curl, CURLOPT_SSL_VERIFYPEER, 0);

        $response = curl_exec($curl);
        $err = curl_error($curl);

        curl_close($curl);
        if ($err) {
          echo "cURL Error #:" . $err;
        } else {
          echo $response;
        }

问题是参数中有空格。
空格
应替换为
%20
。您需要执行以下操作:

$url="https://***.***.**.***/v1.0/collections/**/workspaces/3b09eff6-69ae-4932-9419-14eeb69a9dbd/***?datasetDisplayName=new test";
$curl_url=str_replace(" ","%20",$url);
或者您必须使用。这是在对URL的查询部分中使用的字符串进行编码时使用的

$curl_url="https://***.***.**.***/v1.0/collections/**/workspaces/3b09eff6-69ae-4932-9419-14eeb69a9dbd/***?datasetDisplayName=urlencode(new test)";
然后


我建议你取下你的钥匙。您的密钥应该是私有的,而不是发布在这里,所以我删除了它。Curl的输出是什么?错误?一个空白字符串?没有错误…只是空响应如果它显示了一些错误,我可以从中检查,但不能