2014-07-26 3 views
1

curl을 사용하여 PHP에서 userless access 접근 방식으로 foursquare api를 호출합니다. 정사각형 끝 점 venues search은 사용자가없는 액세스를 지원해야합니다.foursquare 무단 액세스 컬 PHP

$city = urlencode($city); 
$location= urlencode($location); 

$url = 'https://api.foursquare.com/v2/venues/search?query=' . $location . ' &near=' . $city . '&v=20130815&client_id=xxx&client_secret=xxx'; 

$ch = curl_init(); 
curl_setopt($ch, CURLOPT_URL, $url); 
curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1); 

$response = json_decode(curl_exec($ch), true); 

응답 :

[code] => 400 
    [errorType] => invalid_auth 
    [errorDetail] => Missing access credentials. See https://developer.foursquare.com/docs/oauth.html for details. 

AFAIK, OAuth를 필요로하지 않는 'userless 액세스'접근 방식을 사용. 나는 클라이언트 ID와 비밀을 포함하고있다. 그럼 왜 'invalid_auth'오류가 발생합니까?

브라우저에 $ url의 출력을 입력하면 정확한 응답을 얻습니다. $ url을 하드 코딩하면 curl이 올바른 응답을 반환합니다. 그렇다면 동적 $ url이 인증 오류를 발생시키는 이유는 무엇입니까?

답변

1

솔루션 : ' &near='는해야 '&near=' -argh