어디서나 해결책을 찾을 수없는 문제가 있습니다. 더 나쁜 것은 아무도이 문제가있는 것 같아서 아마 뭔가 어리석은 짓을 할 것입니다.요청시 cURL이 멈추고 계속 진행될 때까지 대기합니다.
일부 배경 정보 : AJAX 요청을 다른 서버로 전달하는 프록시 같은 페이지를 만들려고합니다. 이것은 동일한 도메인 정책을 우회합니다. 이 코드에서 원하는 것은 POST 변수를 가져 와서 다른 페이지로 전달한 다음 결과를 반환하는 것뿐입니다. 그것은 일을하고 있지만 한 가지 : 타임 아웃이 계속 될 때까지 기다릴 때마다. 이제 1 초에 넣었으므로 지금은 괜찮습니다. 그러나 빠른 응답과 적절한 시간 초과가 필요합니다.
// create a new cURL resource
$call = curl_init();
// set URL and other appropriate options
curl_setopt($call, CURLOPT_URL, $url);
curl_setopt($call, CURLOPT_POST, true);
curl_setopt($call, CURLOPT_POSTFIELDS, $params);
curl_setopt($call, CURLOPT_HEADER, false);
curl_setopt($call, CURLOPT_RETURNTRANSFER, true);
curl_setopt($call, CURLOPT_CONNECTTIMEOUT, 1);
// grab URL and pass it to the browser
$response = curl_exec($call);
// close cURL resource, and free up system resources
curl_close($call);
echo $response;
내가 보내는 시도했다 : 여기
내 코드의 "연결을 닫기"그것으로 헤더 및 대상 코드가 실행이 이루어집니다 지정할 수 있도록하는 방법은 여러 가지가 (콘텐츠 길이를 설정 플러싱 , die() 등). 이 시점에서 나는 정말로 무슨 일이 일어나고 있는지 모릅니다. 가장 놀라운 것은 제가 비슷한 문제를 가진 사람을 찾을 수 없다는 것입니다.누가 나를 도와 드릴까요?
흠, 시간 초과를 기다리는 것으로 설명하는 이상한 시간 초과는 최대 값을 의미합니다. 시간 초과가 지정되지 않은 경우 (또는 값으로 0을 지정하는 경우) 응용 프로그램 동작은 무엇입니까? –
아직 시간 초과 값으로 0으로 시도하지는 않았지만 지정된 시간 제한이 없으면 약 15 초가 걸립니다. 기본값은 일종의 기본값입니다. –