2011-07-27 3 views
1

그래서 난 내 브라우저 URL에 넣고 경우 :간단한 PHP Google 지역 정보 API 요청

https://maps.googleapis.com/maps/api/place/search/xml?location=45.508867,-73.554242&radius=500&sensor=false&key=mykey 

의미가 있습니다. 내가 PHP에서 동일한 통화를하려고하면하지만 액세스가 거부 얻을 :

<?php 
    $ch = curl_init(); 
    curl_setopt($ch, CURLOPT_URL, "https://maps.googleapis.com/maps/api/place/search/xml"); 
    curl_setopt($ch, CURLOPT_POSTFIELDS, "location=45.508867,-73.554242&radius=500&sensor=false&key=mykey"); 
    $result = curl_exec($ch); 
    echo $result; 
?> 

나는 많은 다른 옵션과 사소한 변경을 시도했지만 아무것도 작동하고 그 이유를 알아낼 수 없습니다.

+2

'User-Agent'를 추가하십시오. –

답변

0

테스트 목적으로이 작업을 수행하는 경우 요청 양식 실행을 방해 할 수 있으므로 SSL 확인이 사용되지 않도록 설정하십시오.

0

난 당신이 컬 설정을 놓치고 생각 :

curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1); 
0
$latitude = 27.7172; 
$longitude = 85.3240; 
$radius = 50000; 
$name = "kupondole";  
$url = "https://maps.googleapis.com/maps/api/place/search/json?name=".urlencode($name)."&location=".$latitude.",".$longitude."&radius=".$radius."&key=MY_KEY"; 
      $ch = curl_init(); 
      curl_setopt($ch, CURLOPT_URL, $url); 
      curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1); 
      curl_setopt($ch, CURLOPT_PROXYPORT, 3128); 
      curl_setopt($ch, CURLOPT_SSL_VERIFYHOST, 0); 
      curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, 0); 
      $response = curl_exec($ch); 
      curl_close($ch); 

작품 완벽하게 정상적으로.

관련 문제