cURL을 사용하여 PHP에서 API 호출을하려고합니다. 권한 부여 헤더가 설정되어 있지 않은 것처럼인증 헤더가 PHP cURL로 설정되지 않았습니다.
$ch = curl_init();
curl_setopt($ch, CURLOPT_URL, "http://localhost/api/");
curl_setopt($ch, CURLOPT_POSTFIELDS, json_encode(array('sql' => $sql)));
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
curl_setopt($ch, CURLOPT_HTTPHEADER, array('Authorization: MY-API-KEY'));
$response = curl_exec($ch);
curl_close($ch);
것 같다 :
이
내 코드입니다. 나는 헤더를 올바르게 인식하지 못한다고 말하면서 구글을 둘러 보았다. 누구든지 도와 줄 수 있습니까? 인증 코드없이 API 호출에 대한 코드가 작동합니다.curl -H 'Authorization: MY-API-KEY'...
모든 작품 :
UPDATE : 명령 줄 도구 컬를 통해 명령을 호출 .
PHP cURL의 의견은 "액세스 거부"입니다.
내가 승 코드를 실행하는 기본 QWxhZGRpbjpvcGVuIHNlc2FtZQ의 ==를/PHP 5.4 - Authorization-Header/is/set (http://www.nirsoft.net/utils/smsniff.html에서 확인). 그래서 문제는 API 측에 있다고 추측 할 수 있습니다. 행운을 빕니다! –
'$ 응답 '은 무엇입니까? 또한'curl_error()'를 확인하십시오. –
cURL에서 오류 메시지가 표시되지 않지만 API에서 "액세스 거부"가 표시됩니다. – user809829