편집 : 이제는 HTML 양식을 사용하여 POST를 통해 데이터를 제출했는데 이것이 완벽하게 작동하므로 cURL 오류는 대단히 감사합니다! 이상하게 보입니다. 어제 밤에 작동했지만 지금은 오늘 밤이 아닙니다 ...cURL이 더 이상 작동하지 않습니다.
o 어젯밤에 첫 번째 cURL 기능을 사용할 수있었습니다. 웬일인지 (그리고 내가 알고있는 변경없이) 그것은 현재 작동하지 않습니다.
내 코드는 다음과 같습니다
<?php
$curl = curl_init();
curl_setopt($curl, CURLOPT_URL,"http://www.example.com/api");
curl_setopt($curl, CURLOPT_POST, 1);
curl_setopt($curl, CURLOPT_POSTFIELDS, "apiKey=var1&message=var2&to=var3&from=var4");
curl_exec ($curl);
curl_close ($curl);
?>
는 지금은 PHP 로그에서 에러가 발생하지 않고 나는 어떤 명백한 구문 오류를 볼 수 없습니다. 나는 Im '을 사용하여 v7을 사용하고 cURL이 설치되었는지 확인했습니다 (정확한 기술 용어 인 경우). API 주소에 액세스 할 때 POST 데이터가이 함수를 사용하지 않고 인증 오류를 발생시키지 않으면 최소한 빈 페이지 만 가져올 것으로 예상됩니다.
이것은 내가 cURL 자체가 데이터를 게시하는 것이 아니라 어떻게 든 무시한다는 것을 알게합니다. cURL 뒤에 헤더를 넣으면 코드에서 치명적인 오류가 발생하지 않으므로 헤더를 따르십시오.
이 인증 오류가 아마,'200'의 HTTP 상태가 있습니까 :
은 또한 훨씬 더 강력한 수정에 대해 설명합니다 여기에 답을 찾았나요? 'CURLOPT_RETURNTRANSFER'를 켜고'curl_exec'의 반환 값을 버리려고 했습니까? – ceejayoz
내 말은 apiKey 변수를 사용하지 않고 수동으로 페이지로 이동하기 때문에 자연스럽게 인증 오류가 발생하기 때문입니다. 이 오류는 cURL에서 반환되지 않으므로 문제가 아님을 알고 있습니다. 데이터 자체가 전송되지 않습니다. 나는 CURLOPT_RETURNTRANSFER를 켜는 방법을 알고 있음을 인정해야한다. – Rockhopper