2014-11-18 2 views
1

Google 지역 정보에서 검색 요청을 처리하는 방법에 대한 질문이 있습니다.Google 장소 검색 방법 불일치

상황 : 특정 위치에서 atm 컴퓨터를 찾는 앱이 있습니다. 검색은 다음 URL로 처리됩니다. https://maps.googleapis.com/maps/api/place/search/json?location=49.338233,11.04442199999994&radius=1000&keyword=atm|geldautomat&sensor=false&key=KEY

이 방법으로 충분합니다.

이제이 atm 조회는 js를 사용하여 웹 응용 프로그램으로 전송되어야합니다. 나는 장소 api를 사용하고있다 그러나 나는 다만 동일한 결과를 얻는 방법 파악할 수 없다.

예 : 위의 링크와 동일한 매개 변수를 사용하여 new google.maps.places.PlacesService(map).search(request, callback)을 사용하면 결과가 크게 달라집니다! 일부 지역의 경우 더 많은 결과를 얻었고 다른 지역의 경우 결과가 더 적거나 같지 않게되었습니다.

나는

search (using keyword-parameter) 
radarSearch (using type atm) 
nearbySearch (using type atm, too) 

에서 조합을 사용하려고했지만이 너무 많은 결과 (ATM 기계가없는 예를 들어, 은행)을 생성합니다. 또한, 나는 하나를 만족해야하는 세 가지 요청을 해고하는 것을 피하고 싶습니다.

위와 같은 URL을 사용하고 싶지만 동일한 출처 정책과 충돌합니다. 그리고 내가 말할 수있는 한 Google은 v3 API 표준에서 jsonp를 금지합니다.

그래서 질문은 다음과 같습니다. Google 지역 정보의 현재 v3 js API 사용 : 위 URL에서 수행 한 요청을 어떻게 시뮬레이트합니까?

답변

0

나는 요청 설정에 순위 기준 매개 변수를 추가하고 URL에서와 같은 결과를 가지고 :

var request = { 
    location: default_center, 
    radius: 1000, 
    rankby : google.maps.places.RankBy.DISTANCE, 
    keyword: 'atm|geldautomat' 
}; 

jsfiddle demo을 확인하고 당신을 위해 작동하는지 알려 주시기 바랍니다.

+1

사실입니다. 결과는 같습니다. 나는 왜 앱에서 검색 룩업이 다른 결과를 얻는 지 알지 못한다. 알고리즘은 똑같아 보입니다. 음, 그 또 다른 경우입니다. 그래도 고마워. 당신의 노력을 인정할 수있는 현상금을 드리겠습니다. – hurrtz