2014-11-24 6 views
0

Google지도 API를 사용하여 alpha2 코드로지도를 표시하는 앱이 있지만 In (인도)) 및 CA (캐나다).IN (인도) 및 CA (캐나다)에 대한 국가 alpha2 코드로 Google지도 API 지오 코드 오류

function codeAddress() { 
    var address = document.getElementById('address').value; 
    geocoder.geocode({ 'address': address}, function(results, status) { 
    if (status == google.maps.GeocoderStatus.OK) { 
     map.setCenter(results[0].geometry.location); 
     var marker = new google.maps.Marker({ 
      map: map, 
      position: results[0].geometry.location 
     }); 
    } else { 
     alert('Geocode was not successful for the following reason: ' + status); 
    } 
    }); 
} 

위의 함수의 주소 변수가 국가의 전체 이름 (인도, 캐나다) 걸릴 수 있지만, 내 응용 프로그램은 알파 2 코드를 공급 : 코드는 다음입니다. 내 임시 해결책은 위의 함수에서 'IN'과 'CA'라는 하드 코드이지만, 더 나은 전략이 있는지 궁금합니다.

답변

0

Google지도 API를 읽은 후 API에 지역 바이어스가 있음을 알게되었습니다. 기본적으로 요청을 보낸 위치에 대한 바이어스가 있습니다. 예를 들어, 미국인이고 'IN'을 쿼리하는 경우 지역 바이어스가 미국인 경우 Google지도가 먼저 'IN'을 찾으려고 시도합니다.이 위치는 인디애나입니다. {'address' : address, 'region': 'cn'};//이

중국에 지역 편견을 설정에서 '지역'매개 변수를 설정

  1. :

    은 또한에 의한 지역 바이어스를 오버라이드 (override)하는 두 가지 방법이 걸 알게

  2. componentRestrictions 옵션을 사용합니다.