0

我一直在尝试通过 HTTP 请求发送一些东西,使用 CURLOPT POSTFIELDS 并且数据似乎没有传输。我错过了什么吗?

        function sendTestCase($caseArgs){
        try{
            $ch = curl_init();
            $sendData = http_build_query($caseArgs);
             curl_setopt($ch, CURLOPT_POSTFIELDS, $sendData);
            curl_setopt($ch, CURLOPT_URL, 'http://localhost:8888/testrail/index.php?/miniapi/add_case/');  
            curl_setopt($ch, CURLOPT_HEADER, false);
            curl_setopt($ch, CURLOPT_POST, 1);

            curl_setopt($ch, CURLOPT_HTTPHEADER,array("Expect:"));

            curl_exec($ch);
        }
        catch (HttpException $ex){
            echo $ex."<-Exception";
 }

 curl_close($ch);
    }
4

1 回答 1

1

POSTFIELDS 完全能够接受一个数组,curl 会为你做 url-building。就目前而言,您正在将一个字符串传递给 curl(它恰好包含您的表单值),但没有传递一个字段名称,因此 curl 正在发送一个裸字符串。试试这个:

 curl_setopt($ch, CURLOPT_POSTFIELDS, $caseArgs);
于 2012-05-14T02:04:34.237 回答