PHP에서 서버에 요청을 보내려 할 때 인스턴트 메시지가 문제가되는 것처럼 보입니다. 는 HTTP API 요청은 다음과 같이이다 : http://api.ean.com/ean-services/rs/hotel/v3/avail?minorRev14&apiKey=p9ycn9cxb2zp3k3gfvbf5aym&cid=55505&locale=en_US&hotelId=122212&stateProvinceCode=%20NV%C2%A4cyCode=USD&arrivalDate=12/27/2012&departureDate=12/28/2012&room1=2,&room2=2,18,15&room3=3,16,16,15&room4=3,&includeDetails=true&includeRoomImages=true
400 - Curl에서 잘못된 요청이 있습니다.
I가 나는 오류가 발생하는 것으로 판단 PHP에서 내 코드의 다음 부분이 내가로부터 무엇을 얻을
$url = 'http://api.ean.com/ean-services/rs/hotel/v3/avail?minorRev14';
$url .= '&apiKey=p9ycn9cxb2zp3k3gfvbf5aym';
$url .= '&cid=55505';
$url .= '&locale=' . $locale . '&hotelId=' . $hotelid . '&stateProvinceCode=' . $state . '¤cyCode=USD';
$url .= '&arrivalDate=' . $datefr . '&departureDate=' . $dateto . '&' . $details . '&includeDetails=true&includeRoomImages=true';
$header = "Accept: application/json";
$ch = curl_init();
curl_setopt($ch, CURLOPT_HTTPHEADER, $header);
curl_setopt($ch, CURLOPT_ENCODING, "gzip");
curl_setopt($ch, CURLOPT_CUSTOMREQUEST, 'GET');
curl_setopt($ch, CURLOPT_URL, $url);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
$retValue = curl_exec($ch);
$response = json_decode(curl_exec($ch));
$ee = curl_getinfo($ch);
print_r($ee);
print_r($retValue);
인 print_r (curl_getinfo ($의 채널)) 문 :
Array (
[url] => http://api.ean.com/ean-services/rs/hotel/v3/avail?minorRev14&apiKey=p9ycn9cxb2zp3k3gfvbf5aym&cid=55505&locale=en_US&hotelId=122212&stateProvinceCode= NV¤cyCode=USD&arrivalDate=12/27/2012&departureDate=12/28/2012&room1=2,&room2=2,18,15&room3=3,16,16,15&room4=3,&includeDetails=true&includeRoomImages=true
[content_type] => text/html
[http_code] => 400
[header_size] => 181
[request_size] => 340
[filetime] => -1
[ssl_verify_result] => 0
[redirect_count] => 0
[total_time] => 0.469
[namelookup_time] => 0
[connect_time] => 0.125
[pretransfer_time] => 0.125
[size_upload] => 0
[size_download] => 349
[speed_download] => 744
[speed_upload] => 0
[download_content_length] => 349
[upload_content_length] => 0
[starttransfer_time] => 0.469
[redirect_time] => 0
[certinfo] => Array ()
[redirect_url] =>
)
나는 해결책이 될 수 있는지 확실하지 않다 나는 잠시 지금 희망이 문제에서 찾고있다 완전히 사람이
@Leigh added explaination, CURLOPT_USERAGENT에서 'USERAGENT'는 자체 설명입니다 – user7282
@ 일부 서버는 거미/크롤러 또는 봇을 차단하고 브라우저 만 허용하기 때문에 – user7282
이것은 답변에 추가해야하는 정보의 종류입니다 ** 처음부터 **. 하나의 코드만으로는 충분하지 않습니다. – Leigh