发布CURL请求超时

时间:2015-09-01 15:56:44

标签: php post curl timeout

我试图向其他API服务发出请求,这需要花费大量时间而没有成功......

为了测试它,我创建了一个简单的API请求:

function testTimeout() {
    set_time_limit(0);
    sleep(600);
    echo json_encode(array('status' => 'ok', 'result' => 'true'));
}

如果我在普通浏览器中尝试了这个API请求,它工作得很完美,而且我总是收到响应(因此我认为问题出在我的CURL请求中)。只有在我使用CURL的时间不到500秒时才能使用CURL睡觉......但是我有更多的回答......

这是我的CURL请求:

    set_time_limit(0);
    $ch = curl_init();
    curl_setopt($ch, CURLOPT_URL, $url);
    curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
    curl_setopt($ch, CURLOPT_POST, 2);
    curl_setopt($ch, CURLOPT_POSTFIELDS, $content);
    curl_setopt($ch, CURLOPT_CONNECTTIMEOUT, 0); 
    curl_setopt($ch, CURLOPT_TIMEOUT, 1000);
    //execute post
    $result = curl_exec($ch);
    $curl_error = curl_error($ch);
    //close connection
    curl_close($ch);

我总是收到:"操作在1000000毫秒后超时,收到0字节"

我尝试将超过1000作为CURLOPT_TIMEOUT而没有成功......

这真的是异乎寻常的......我用Google搜索没有成功......

0 个答案:

没有答案