Coğrafi kodlama isteği ve yanıtı

İstek

Coğrafi Kodlama API'si isteği aşağıdaki biçimdedir:

https://maps.googleapis.com/maps/api/geocode/outputFormat?parameters

Bu örnekte outputFormat, aşağıdaki değerlerden biri olabilir:

  • json (önerilen), JavaScript Object Notation (JSON)'daki çıkışı belirtir; veya
  • xml, XML'deki çıkışı gösterir

HTTPS gerekli.

Bazı parametreler zorunlu, bazıları ise isteğe bağlıdır. URL'lerde standart olduğu gibi, parametreleri "ve" (&) karakteri kullanılarak ayrılır.

Bu sayfanın geri kalanında, coğrafi kodlama ve coğrafi kodlamayı ayrı olarak tersine çevirme Her istek türü için farklı parametreler kullanılabilir.

Coğrafi kodlama (enlem/boylam arama) parametreleri

Coğrafi kodlama isteğindeki gerekli parametreler:

  • address: Coğrafi kodlamak istediğiniz sokak adresi veya plus kodu. Biçime uygun olarak adresleri belirtin ilgili ülkenin ulusal posta servisi tarafından kullanılması. Ek bilgiler işletme adları ve daire, daire veya kat numaraları gibi adres öğeleri kaçınılmalıdır. Açık adres öğeleri boşluklarla ayrılmalıdır (burada, %20 adresine url çıkışlı olarak gösterilmektedir):
    address=24%20Sussex%20Drive%20Ottawa%20ON
    Artı kodlarını burada gösterildiği gibi biçimlendirin (artı işaretleri %2B için URL çıkışlı, boşluklar ise %20 öğesine URL olarak çıkışlıdır):
    • global kod, 4 karakterlik bir alan kodudur ve en az 6 karakterden oluşur yerel kod (849VCWC8+R9, 849VCWC8%2BR9 şeklindedir).
    • Karma kod, açık bir konuma sahip 6 karakter veya daha uzun bir yerel koddur (CWC8+R9 Mountain View, CA, ABD için CWC8%2BR9%20Mountain%20View%20CA%20USA).

    --OR--
    components — Öğeler içeren bir bileşen filtresi dikey çizgiyle (|) ayrılmalıdır. Bileşen filtresi de kabul edilir. isteğe bağlı parametre olarak address sağlanır. Bileşenler filtresindeki her öğe bir component:value eşlenir ve sonuçları tamamen kısıtlar alır. Daha fazla bilgi için: bileşen filtreleme bölümüne bakın.
  • key — Uygulamanızın API anahtarı. Bu anahtar, bunu yapmanızı öneririz. Anahtar edinme hakkında bilgi edinin.

Daha fazla bilgi için lütfen SSS sayfasına bakın.

Coğrafi Kodlama isteğindeki isteğe bağlı parametreler:

  • bounds — Görüntü alanının sınırlayıcı kutusu önyargısını daha belirgin bir şekilde belirleyebileceksiniz. Bu parametre, yalnızca coğrafi kodlayıcıdan gelen sonuçları etkiler, tam olarak kısıtlamaz. (Daha fazla daha fazla bilgi için aşağıdaki Görünüme Ağırlık Verme konusuna bakın.)
  • language — Kullanılacak dil sonuç döndürecektir.
    • Desteklenenler listesini dillerini inceleyin. Google, desteklenen dilleri genellikle günceller. Dolayısıyla bu liste tam kapsamlı olmayabilir.
    • language sağlanmazsa coğrafi kodlayıcı, Accept-Language başlığında belirtilen tercih edilen dili veya isteğin gönderildiği alanın yerel dilini kullanmaya çalışır.
    • Coğrafi kodlayıcı, Google'a ait olmayan bir açık adres sağlamak için elinden geleni yapar. hem kullanıcı hem de yerel kullanıcılar için okunabilir. Bu hedefe ulaşmak için, yerel dildeki açık adresleri, komut dosyasını kullanarak, gerekirse kullanıcı tarafından okunabilen dili'ne dokunun. Diğer tüm adresler tercih edilen dilde döndürülür. Adres bileşenlerinin hepsi aynı dilde döndürülür. ilk bileşenden seçilir.
    • Tercih edilen dilde bir ad mevcut değilse coğrafi kodlayıcı, en yakın eşleşmedir.
    • Tercih edilen dilin, arama sonuçlarında görünen döndürmeyi seçtiği sıra ve bunların döndürülme sırasına göre belirlenir. Coğrafi kodlayıcı, kısaltmaları modele ve Örneğin, sokak türlerinin kısaltmaları veya başka bir deyişle bir dilde geçerli olmayabilir. Örneğin, utca ve tér sırasıyla sokak ve kare için eş anlamlıdır. Macarca.
  • region: ccTLD olarak belirtilen bölge kodu ("üst düzey alan") iki karakterlik değer. Bu parametre yalnızca coğrafi kodlayıcıdan gelen sonuçlar üzerindeki etkisinin tam olarak kısıtlanmamasını sağlar. (Daha fazla daha fazla bilgi için aşağıdaki Bölgeye Ağırlık Verme bölümüne bakın.) İlgili içeriği oluşturmak için kullanılan parametresi geçerli yasaya göre sonuçları da etkileyebilir.
  • components — Öğe içeren bir bileşen filtresi dikey çizgiyle (|) ayrılmalıdır. Bileşen filtresi İstek bir address içermiyorsa zorunludur. Bileşenler filtresindeki her öğe bir component:value eşlenir ve sonuçları tamamen kısıtlar alır. Daha fazla bilgi için: bileşen filtreleme bölümüne bakın.
  • extra_computations — şu ek özellikleri ekleyin: Aynı API isteğinde bu özelliklerin birden fazlasını etkinleştirmek için Her özellik isteğinde extra_computations parametresini kullanır, örneğin:
    extra_computations=ADDRESS_DESCRIPTORS&extra_computations=BUILDING_AND_ENTRANCES

Yanıtlar

Coğrafi kodlama yanıtları, URL isteğinde output işaretiyle belirtilen biçimde veya varsayılan olarak JSON biçiminde döndürülür.

Bu örnekte, Coğrafi Kodlama API'si bir json isteğinde bulunuyor. "1600 Amphitheatre Parkway, Mountain View, Kanada".

Bu istek, JSON output işaretinin kullanımını gösterir:

https://maps.googleapis.com/maps/api/geocode/json?address=1600+Amphitheatre+Parkway,+Mountain+View,+CA&key=YOUR_API_KEY

Bu istek, XML output işaretinin kullanımını gösterir:

https://maps.googleapis.com/maps/api/geocode/xml?address=1600+Amphitheatre+Parkway,+Mountain+View,+CA&key=YOUR_API_KEY

Örnek JSON ve XML yanıtlarını görmek için aşağıdaki sekmeleri seçin.

JSON

{
    "results": [
        {
            "address_components": [
                {
                    "long_name": "1600",
                    "short_name": "1600",
                    "types": [
                        "street_number"
                    ]
                },
                {
                    "long_name": "Amphitheatre Parkway",
                    "short_name": "Amphitheatre Pkwy",
                    "types": [
                        "route"
                    ]
                },
                {
                    "long_name": "Mountain View",
                    "short_name": "Mountain View",
                    "types": [
                        "locality",
                        "political"
                    ]
                },
                {
                    "long_name": "Santa Clara County",
                    "short_name": "Santa Clara County",
                    "types": [
                        "administrative_area_level_2",
                        "political"
                    ]
                },
                {
                    "long_name": "California",
                    "short_name": "CA",
                    "types": [
                        "administrative_area_level_1",
                        "political"
                    ]
                },
                {
                    "long_name": "United States",
                    "short_name": "US",
                    "types": [
                        "country",
                        "political"
                    ]
                },
                {
                    "long_name": "94043",
                    "short_name": "94043",
                    "types": [
                        "postal_code"
                    ]
                },
                {
                    "long_name": "1351",
                    "short_name": "1351",
                    "types": [
                        "postal_code_suffix"
                    ]
                }
            ],
            "formatted_address": "1600 Amphitheatre Pkwy, Mountain View, CA 94043, USA",
            "geometry": {
                "location": {
                    "lat": 37.4222804,
                    "lng": -122.0843428
                },
                "location_type": "ROOFTOP",
                "viewport": {
                    "northeast": {
                        "lat": 37.4237349802915,
                        "lng": -122.083183169709
                    },
                    "southwest": {
                        "lat": 37.4210370197085,
                        "lng": -122.085881130292
                    }
                }
            },
            "place_id": "ChIJRxcAvRO7j4AR6hm6tys8yA8",
            "plus_code": {
                "compound_code": "CWC8+W7 Mountain View, CA",
                "global_code": "849VCWC8+W7"
            },
            "types": [
                "street_address"
            ]
        }
    ],
    "status": "OK"
}

JSON yanıtının iki kök öğe içerdiğini unutmayın:

  • "status", istekte meta verileri içeriyor. Görüntüleyin Durum kodları aşağıdadır.
  • "results", coğrafi kodlanmış adres bilgileri ve geometri bilgileri dizisi içerir.

Genellikle, "results" dizisinde yalnızca bir giriş döndürülür. coğrafi kodlayıcı, adres araması yapıldığında birden fazla sonuç döndürebilir. belirsizdir.

XML

<GeocodeResponse>
    <status>OK</status>
    <result>
        <type>street_address</type>
        <formatted_address>1600 Amphitheatre Pkwy, Mountain View, CA 94043, USA</formatted_address>
        <address_component>
            <long_name>1600</long_name>
            <short_name>1600</short_name>
            <type>street_number</type>
        </address_component>
        <address_component>
            <long_name>Amphitheatre Parkway</long_name>
            <short_name>Amphitheatre Pkwy</short_name>
            <type>route</type>
        </address_component>
        <address_component>
            <long_name>Mountain View</long_name>
            <short_name>Mountain View</short_name>
            <type>locality</type>
            <type>political</type>
        </address_component>
        <address_component>
            <long_name>Santa Clara County</long_name>
            <short_name>Santa Clara County</short_name>
            <type>administrative_area_level_2</type>
            <type>political</type>
        </address_component>
        <address_component>
            <long_name>California</long_name>
            <short_name>CA</short_name>
            <type>administrative_area_level_1</type>
            <type>political</type>
        </address_component>
        <address_component>
            <long_name>United States</long_name>
            <short_name>US</short_name>
            <type>country</type>
            <type>political</type>
        </address_component>
        <address_component>
            <long_name>94043</long_name>
            <short_name>94043</short_name>
            <type>postal_code</type>
        </address_component>
        <geometry>
            <location>
                <lat>37.4224428</lat>
                <lng>-122.0842467</lng>
            </location>
            <location_type>ROOFTOP</location_type>
            <viewport>
                <southwest>
                    <lat>37.4212648</lat>
                    <lng>-122.0856069</lng>
                </southwest>
                <northeast>
                    <lat>37.4239628</lat>
                    <lng>-122.0829089</lng>
                </northeast>
            </viewport>
        </geometry>
        <place_id>ChIJeRpOeF67j4AR9ydy_PIzPuM</place_id>
        <plus_code>
            <global_code>849VCWC8+X8</global_code>
            <compound_code>CWC8+X8 Mountain View, CA</compound_code>
        </plus_code>
    </result>
</GeocodeResponse>

XML yanıtının tek bir koddan <GeocodeResponse> ve iki üst düzey öğe:

  • <status>, istekte meta verileri içeriyor. Aşağıdaki durum kodlarına bakın.
  • Sıfır veya daha fazla <result> öğesi, her biri tek bir öğe içeriyor coğrafi olarak kodlanmış adres bilgileri ve geometri bilgileri kümesidir.

XML yanıtı, JSON yanıtından oldukça uzundur. Örneğin, Bu nedenle, tercih edilen veri kaynağı olarak json çıkışı işaretini kaldırmanız gerekir.xml Ayrıca, XML ağaçlarını işlemek için de referans doğru şekilde hazırlamanız gerekir. Görüntüleyin Çıkış işleme için önerilen bazı tasarım kalıpları için XML'i XPath ile ayrıştırma.

  • XML sonuçları bir kök <GeocodeResponse> öğesinde sarmalanır.
  • JSON, çoğul dizilere (types) göre birden çok öğe içeren girişleri belirtir. XML ise bunları birden çok tekil öğe (<type>) kullanarak belirtir.
  • Boş öğeler JSON'da boş dizilerle, XML'de ise bu tür bir öğenin yokluğuyla belirtilir. Sonuç döndürmeyen bir yanıt, JSON'da boş bir results dizisi döndürür ancak örneğin XML'de <result> öğesi döndürmez.

Durum kodları

Coğrafi Kodlama yanıt nesnesindeki "status" alanı, ve coğrafi kodlamanın neden bu şekilde olduğunu anlamanıza yardımcı olacak hata ayıklama bilgileri çalışmıyor. "status" alanı aşağıdaki değerleri içerebilir:

  • "OK", hata olmadığını, adresin başarıyla ayrıştırıldığını ve en az bir coğrafi kod döndürüldüğünü gösterir.
  • "ZERO_RESULTS", coğrafi kodlamanın başarılı olduğunu ancak hiçbir sonuç döndürmediğini gösterir. Bu durum, coğrafi kodlayıcıya var olmayan bir address iletilmesi durumunda ortaya çıkabilir.
  • OVER_DAILY_LIMIT aşağıdakilerden herhangi birini gösterir:
    • API anahtarı eksik veya geçersiz.
    • Hesabınızda faturalandırma etkinleştirilmedi.
    • Kendi kendine belirlenen kullanım sınırı aşıldı.
    • Belirtilen ödeme yöntemi artık geçerli değil (örneğin, Kredi kartının geçerlilik süresi sona ermiş).

    Bilgi edinmek için Haritalar hakkında SSS sayfasına bakın. Nasıl düzeltilir?

  • "OVER_QUERY_LIMIT", kotanızı aştığınızı gösterir.
  • "REQUEST_DENIED", isteğinizin reddedildiğini gösterir.
  • "INVALID_REQUEST" genellikle sorgunun (address, components veya latlng) eksik olduğunu gösterir.
  • "UNKNOWN_ERROR", isteğin gerçekleştirilemediğini gösterir işlendi. Aşağıdaki durumlarda istek başarılı olabilir: tekrar deneyin.

Hata mesajları

Coğrafi kodlayıcı, OK dışında bir durum kodu döndürdüğünde, error_message alanını göreceksiniz. Bu alan, belirtilen durum kodunun nedenleri hakkında daha ayrıntılı bilgi içerir.

Sonuçlar

Coğrafi kodlayıcı, sonuçları (JSON) results dizisine yerleştirir. Coğrafi kodlayıcı hiçbir sonuç döndürmezse (ör. adres mevcut değilse) boş bir results dizisi döndürür. (XML yanıtları sıfır veya daha fazla <result> öğesinden oluşur.)

Normal bir sonuç aşağıdaki alanları içerir:

  • types[] dizisi, döndürülen öğenin türünü gösterir yardımcı olur. Bu dizi, özelliğini gönderin. Örneğin, "Chicago"nun coğrafi kodu iadelerin toplam tutarı "yerellik" Bu da "Chicago"nun bir şehir ve aynı zamanda "siyasi" değerini döndürür Bu simge, siyasi bir tüzel kişilik olduğunu gösteriyor. Bileşenlerde boş türler olabilir diziyi temsil eder. API, gerektiğinde yeni tür değerleri ekleyebilir. Daha fazla bilgi için Adres türleri ve adres bileşenleri başlıklı makaleyi inceleyin.
  • formatted_address, okunabilir öğeleri içeren bir dizedir bu konumun adresine sahip olur.

    Bu adres genellikle posta adresine eşdeğerdir. Bazı Birleşik Krallık gibi ülkelerde, doğru lisans kısıtlamaları nedeniyle posta adresi.

    Biçimlendirilmiş adres mantıksal olarak bir veya daha fazla adresinden oluşur. bileşenleri hakkında daha fazla bilgi edinin. Örneğin, "111 8. Cadde, İstanbul, Türkiye" adresi şu bileşenlerden oluşur: "111" (bina numarası), "8. Cadde" (rota), "New York" (şehir) ve "NY" (ABD eyaleti).

    Biçimlendirilmiş adresi programatik olarak ayrıştırmayın. Bunun yerine, biçimlendirilmiş adres alanına ek olarak API yanıtının içerdiği bağımsız adres bileşenlerini kullanmanız gerekir.

  • address_components[], bu adres için geçerli olan bileşenleri içerir.

    Her adres bileşeni genellikle aşağıdaki alanları içerir:

    • types[], türünü gösteren bir dizidir adres bileşeni. Şu listeye bakın: desteklenen türleri ziyaret edin.
    • long_name, Coğrafi Kodlayıcı tarafından döndürülen adres bileşeninin tam metin açıklaması veya adıdır.
    • short_name, adres için kısaltılmış bir metin adıdır bileşenini (varsa) kontrol edin. Örneğin, eyalet için bir adres bileşeni için sahip olduğu long_name oranında "Alaska" ve short_name/"AK" kullanın.

    address_components[] ile ilgili aşağıdaki gerçeklere dikkat edin dizi:

    • Adres bileşenleri dizisi, formatted_address
    • Bu dizi, aşağıda belirtilenlerin dışında bir adresi formatted_address Tüm siyasi varlıkları geri almak için kullanıyorsanız, ters coğrafi kodlamayı veya belirli bir adres için isteğin bir parametresi olarak adresin enlem/boylamı.
    • Yanıt biçiminin kabul edersiniz. Özellikle, address_components sayısı talep edilen adrese göre değişir ve zaman içinde aynı adrese sahip olmalıdır. Bir bileşen, dizideki konumunu değiştirebilir. Bileşenin türü değişebilir. Belirli bir bileşen, daha sonraki bir yanıtta eksik olabilir.

    Bileşen dizisini işlemek için yanıtı ayrıştırmanız gerekir ve ifadeler aracılığıyla uygun değerleri seçebilirsiniz. Bu kılavuza göz atın: daha fazla bilgi edinebilirsiniz.

  • postcode_localities[], en fazla 100 yerleşimi belirten bir dizidir bir posta kodunda yer alır. Bu, yalnızca sonuç bir posta olduğunda mevcuttur kodu kullanabilirsiniz.
  • geometry, şu bilgileri içeriyor:
    • location, coğrafi olarak kodlanmış enlem ve boylam değerini içeriyor. Normal bu alan genellikle en önemli olanıdır.
    • location_type, belirtilen konumla ilgili ek verileri depolar. Şu anda aşağıdaki değerler desteklenmektedir:

      • "ROOFTOP", döndürülen sonucun açık adres kesinliğine kadar doğru konum bilgilerine sahip olmamızı sağlar.
      • "RANGE_INTERPOLATED" şunu belirtir: döndüren sonucun bir projeyi iki kesin nokta (kavşaklar gibi) arasında interpolasyon yapılan yaklaşım (genellikle bir yolda). İnterpole edilmiş sonuçlar genellikle bir sokak için çatı coğrafi kodları kullanılamadığında döndürülür girin.
      • "GEOMETRIC_CENTER" şunu belirtir: döndürülen sonuç, çoklu çizgi (örneğin, sokak) veya poligon (bölge) gibi bir sonuç.
      • "APPROXIMATE", döndürülen sonuç yaklaşıktır.
    • viewport, görüntülenmesi için önerilen görüntü alanını içeriyor tanımlayan iki enlem, boylam değeri olarak belirtilen,döndürülen sonuç southwest ve görüntü alanı sınırlayıcı kutusunun northeast köşesi. Genellikle görüntü alanı, bir sonucu kullanıcıya görüntülerken çerçevelemek için kullanılır.
    • bounds (isteğe bağlı olarak döndürülür) sınırlayıcı kutuyu depolar Bu satır öğesi, döndürülen sonucu tam olarak içerebilir. Bu sınırların önerilen görüntü alanını kullanır. (Örneğin San Francisco, Farallon Adaları'nın teknik olarak şehrin bir parçasıdır, ancak muhtemelen görüntü alanına döndürülmemelidir.)
  • plus_code (bkz. Konum Kodunu Aç ve artı kodları) buradaki enlem ve boylam koordinatlarından türetilen, yüksek performanslı konum referansı bir alanı ifade eder: derecenin 1/8.000'i x 1/8.000'i (yaklaşık 14 m x) ekvatorda 14 m) veya daha kısa olmalıdır. Artı kodları, adreslerin bulunmadığı yerlerde (binaların bulunmadığı yerlerde) veya sokaklar adlandırılmamış). API her zaman artı kodu döndürmez.

    Hizmet bir artı kodu döndürdüğünde bu kod, küresel kod ve bileşik kod olarak biçimlendirilir:

    • global_code, 4 karakterli alan kodu ve 6 karakter veya daha uzun bir yerel koddur (849VCWC8+R9).
    • compound_code, açık bir konuma sahip 6 karakter veya daha uzun bir yerel koddur (CWC8+R9, Mountain View, CA, ABD). Bu içeriği programlı bir şekilde ayrıştırmayın.
    Mümkün olduğunda, API hem genel kodu hem de bileşik kodu döndürür. Ancak, sonuç, uzak bir konumda (örneğin, bir okyanus veya çöl) olduğunda, global kod döndürülebilir.
  • partial_match, coğrafi kodlayıcının bir kısmı eşleşebilse de orijinal istek için istenen adrese Orijinal isteği hatalı yazımlar ve/veya adres eksiktir.

    Kısmi eşleşmeler en sık, var olmayan açık adresler için ortaya çıkar istekte bulunduğunuz şehir içinde olmalıdır. Kısmi eşleşmeler bir istek aynı konumdaki iki veya daha fazla konumla eşleştiğinde döndürülür. Örneğin, "Hillpar St, Bristol, UK" her ikisi için de kısmi eşleşme döndürür ve Henry Street'te yer alır. Bir istek yanlış yazılmış bir adres bileşeni içeriyorsa coğrafi kodlama hizmetinin alternatif bir adres önerebileceğini unutmayın. Bu şekilde tetiklenen öneriler kısmi bir eşleşmesini sağlar.

  • place_id, diğer Google API'leriyle kullanılabilen benzersiz bir tanımlayıcıdır. Örneğin, şunları yapabilirsiniz: place_id öğesini şurada kullanın: Almak için Places API isteği telefon numarası, çalışma saatleri, kullanıcı bilgileri gibi bilgiler ve daha fazlası. Yer kimliğini görün genel bakış bölümüne bakın.

Adres türleri ve adres bileşeni türleri

Sonuçtaki types[] dizisi, adres türü. Adres türlerine örnek olarak açık adres, bir ülke veya siyasi tüzel kişi olabilir. Şu konumda da bir types[] dizisi var: her bölümünün türünü gösteren address_components[] girin. Bina numarası veya ülke bilgisi örnek olarak verilebilir. (Aşağıdaki listede ayrıntılı types.) Adreslerin birden fazla türü olabilir. Türler, "etiketler" olarak kabul edilebilir. Örneğin, birçok şehir political ve locality türü.

Aşağıdaki türler, hem adres türü ve adres bileşeni türü dizileri:

  • street_address, tam açık adresi gösterir.
  • route, adlandırılmış bir rotayı ("US 101" gibi) gösterir.
  • intersection, genellikle iki olan büyük bir kesişimi gösterir yollar bulunuyor.
  • political, siyasi bir tüzel kişiyi gösterir. Genellikle, bu tür bir sivil yönetim poligonunu gösterir.
  • country, ulusal siyasi kuruluşu belirtir ve genellikle Coğrafi Kodlayıcı tarafından döndürülen en yüksek sipariş türüdür.
  • administrative_area_level_1, birinci dereceden bir hukuki danışmanlığı gösterir ülke düzeyinin altında bir öğe tutarıdır. Amerika Birleşik Devletleri'nde idari düzeyler eyalettir. Tüm uluslar bunları sergilemez sorumlu tutulabilir. Çoğu durumda, yönetici_alanı_seviyesi_1 kısa adlar, ISO 3166-2 alt bölümleri ve diğer geniş kapsamlı dağıtım yapılan listeler; Ancak coğrafi kodlama sonuçlarımız çeşitli sinyallere ve konum verilerine dayanır.
  • administrative_area_level_2, ülke düzeyinin altındaki ikinci düzey sivil bir varlığı gösterir. Amerika Birleşik Devletleri'nde idari düzeyler ilçedir. Tüm uluslar bunları sergilemez sorumlu tutulabilir.
  • administrative_area_level_3, üçüncü düzey bir hukuki danışmanlığı belirtir ülke düzeyinin altında bir öğe tutarıdır. Bu tür, küçük bir sivil toplum bölmesini belirtir. Tüm ülkelerde bu idari düzeyler bulunmaz.
  • administrative_area_level_4, dördüncü dereceden bir sivil toplumu gösterir ülke düzeyinin altında bir öğe tutarıdır. Bu tür, küçük bir idari bölümü belirtir. Tüm uluslar bu idari düzeylerde değildir.
  • administrative_area_level_5, ülke düzeyinin altındaki beşinci düzey sivil bir varlığı belirtir. Bu tür, küçük bir idari bölümü belirtir. Tüm uluslar bu idari düzeylerde değildir.
  • administrative_area_level_6, altıncı dereceden bir sivil toplumu gösterir ülke düzeyinin altında bir öğe tutarıdır. Bu tür, küçük bir idari bölümü belirtir. Tüm uluslar bu idari düzeylerde değildir.
  • administrative_area_level_7, yedinci düzey hukuku belirtir ülke düzeyinin altında bir öğe tutarıdır. Bu tür, küçük bir sivil toplum bölmesini belirtir. Tüm ülkelerde bu idari düzeyler bulunmaz.
  • colloquial_area, yaygın olarak kullanılan bir alternatif adı gösterir ilişkilidir.
  • locality, tüzel kişiliğe sahip bir şehir veya kasaba siyasi tüzel kişisini gösterir.
  • sublocality, birinci dereceden bir sivil tüzel kişiyi belirtir: şehir. Bazı konumlar için ek türlerden biri sunulabilir: sublocality_level_1 - sublocality_level_5. Her alt konum düzeyi bir sivil tüzel kişidir. Büyük sayılar daha küçük olduğunu gösterir coğrafi alanı ifade eder.
  • neighborhood, adlandırılmış bir mahalleyi gösterir
  • premise, adlandırılmış bir konumu (genellikle bir bina veya ortak bir ada sahip bina koleksiyonu
  • subpremise, adlandırılmış bir öğenin altındaki birinci derece öğeyi gösterir. bir dizi binanın içinde yer alan tek bir binadır. Bu yapı, genellikle yaygın bir ad
  • plus_code, türetilmiş kodlanmış konum referansını gösterir enlem ve boylama göre belirlenir. Artı kodları, mevcut olmadıkları yerlerde (binaların numaralandırılmamış veya numaralandırılmayan yerlerdeki açık adresleri) sokaklar adlandırılmamış). https://plus.codes sayfasına bakın inceleyebilirsiniz.
  • postal_code, posta adresini vermek için kullanılan bir posta kodunu belirtir ülke içinde posta gönderin.
  • natural_feature belirgin bir doğal özelliği gösterir.
  • airport, bir havaalanını gösterir.
  • park, adlandırılmış bir parkı gösterir.
  • point_of_interest, adlandırılmış bir önemli yeri gösterir. Bu "ÖY"ler, genellikle bir yere kolayca sığmayan belirgin yerel varlıklardır "Empire State Binası" gibi başka bir kategoride veya "Eyfel Kulesi".

Boş bir tür listesi, söz konusu öğe için bilinen bir tür olmadığını gösterir adresini ziyaret edin.

Yukarıdakilere ek olarak, adres bileşenleri burada listelenen türleri de içerebilir. Bu liste olası her örneğe yer verilmemiştir ve değişikliklere tabidir.

  • floor bir bina adresinin katını gösterir.
  • establishment, genellikle henüz ziyaret edilmeyen yerleri gösterir kategorize edildi.
  • landmark, referans olarak kullanılan yakındaki bir yeri gösterir. yardımcı olan araçlardır.
  • point_of_interest, adlandırılmış bir önemli yeri gösterir.
  • parking, bir otopark veya otopark olduğunu belirtir.
  • post_box, belirli bir posta kutusunu belirtir.
  • postal_town, bazı ülkelerde posta adresleri için kullanılan locality ve sublocality gibi coğrafi alanların gruplandırılmasını gösterir.
  • room, bina adresinin bulunduğu odayı gösterir.
  • street_number tam sokak numarasını gösterir.
  • bus_station, train_station ve transit_station otobüs, tren veya halka açık yerleri belirtir toplu taşıma durağı.

Görüntü alanını etkileme

Bir Coğrafi Kodlama isteğinde, Coğrafi Kodlama hizmetine ilk olarak belirli bir görüntü alanı içindeki sonuçlar (sınırlayıcı kutu olarak ifade edilir). Teklifiniz doğrultusunda bounds parametresini ayarlayarak istek URL'sinin içinde arama yapabilirsiniz.

bounds parametresi, bu sınırlayıcı kutunun güneybatı ve kuzeydoğu köşelerinin enlem/boylam koordinatlarını, koordinatları ayırmak için dikey çizgi (|) karakteri kullanarak tanımlar.

Örneğin, "Washington" için coğrafi kod genellikle ABD’deki Washington:

İstek:

https://maps.googleapis.com/maps/api/geocode/json?address=Washington&key=YOUR_API_KEY

Yanıt:

{
   "results" : [
      {
         "address_components" : [
            {
               "long_name" : "Washington",
               "short_name" : "WA",
               "types" : [ "administrative_area_level_1", "political" ]
            },
            {
               "long_name" : "United States",
               "short_name" : "US",
               "types" : [ "country", "political" ]
            }
         ],
         "formatted_address" : "Washington, USA",
         "geometry" : {
            "bounds" : {
               "northeast" : {
                  "lat" : 49.0024442,
                  "lng" : -116.91558
               },
               "southwest" : {
                  "lat" : 45.543541,
                  "lng" : -124.8489739
               }
            },
            "location" : {
               "lat" : 47.7510741,
               "lng" : -120.7401385
            },
            "location_type" : "APPROXIMATE",
            "viewport" : {
               "northeast" : {
                  "lat" : 49.0024442,
                  "lng" : -116.91558
               },
               "southwest" : {
                  "lat" : 45.543541,
                  "lng" : -124.8489739
               }
            }
         },
         "place_id" : "ChIJ-bDD5__lhVQRuvNfbGh4QpQ",
         "types" : [ "administrative_area_level_1", "political" ]
      }
   ],
   "status" : "OK"
}

Ancak ABD'nin kuzeydoğu kısmını çevreleyen bir sınır kutusu tanımlayan bir bounds bağımsız değişkeni eklemek, bu coğrafi kodun Washington, D.C. şehrini döndürmesine neden olur:

İstek:

https://maps.googleapis.com/maps/api/geocode/json?address=Washington&bounds=36.47,-84.72%7C43.39,-65.90&key=YOUR_API_KEY

Yanıt:

{
   "results" : [
      {
         "address_components" : [
            {
               "long_name" : "Washington",
               "short_name" : "Washington",
               "types" : [ "locality", "political" ]
            },
            {
               "long_name" : "District of Columbia",
               "short_name" : "District of Columbia",
               "types" : [ "administrative_area_level_2", "political" ]
            },
            {
               "long_name" : "District of Columbia",
               "short_name" : "DC",
               "types" : [ "administrative_area_level_1", "political" ]
            },
            {
               "long_name" : "United States",
               "short_name" : "US",
               "types" : [ "country", "political" ]
            }
         ],
         "formatted_address" : "Washington, DC, USA",
         "geometry" : {
            "bounds" : {
               "northeast" : {
                  "lat" : 38.9958641,
                  "lng" : -76.90939299999999
               },
               "southwest" : {
                  "lat" : 38.7916449,
                  "lng" : -77.119759
               }
            },
            "location" : {
               "lat" : 38.9071923,
               "lng" : -77.03687069999999
            },
            "location_type" : "APPROXIMATE",
            "viewport" : {
               "northeast" : {
                  "lat" : 38.9958641,
                  "lng" : -76.90939299999999
               },
               "southwest" : {
                  "lat" : 38.7916449,
                  "lng" : -77.119759
               }
            }
         },
         "place_id" : "ChIJW-T2Wt7Gt4kRKl2I1CJFUsI",
         "types" : [ "locality", "political" ]
      }
   ],
   "status" : "OK"
}

Bölgeye ağırlık verme

Bir Coğrafi Kodlama isteğinde, Coğrafi Kodlama hizmetine şunu geri dönmesi talimatını verebilirsiniz: region kullanılarak belirli bir bölgeye ağırlık verilen sonuçlar parametresinden sonra bir değer girin. Bu parametre bir ccTLD (ülke kodu üst düzey) alır alan) bağımsız değişkeninin önüne geçin. Çoğu ccTLD kodu ISO 3166-1 kodları (bazı önemli istisnalarla birlikte). Örneğin, Birleşik Krallık Krallık'ın ccTLD'si "uk" (.co.uk), ISO 3166-1 kodu "gb" iken (teknik olarak "Birleşik Krallık Birleşik Krallık ve Kuzey İrlanda").

Coğrafi kodlama sonuçları, ana Google Haritalar uygulamasının resmi olarak kullanıma sunulduğu her alan için taraflı olabilir. Yalnızca ağırlık vermenin belirli bir alana ait sonuçları tercih eder; Daha alakalı sonuçlar varsa bu alanın dışındaki kullanıcılar da dahil edilebilir.

Örneğin, "Toledo" için coğrafi kod varsayılan olarak bu sonucu döndürür Coğrafi Kodlama API'si için alan adı ABD olarak ayarlanmalıdır. İstek:

https://maps.googleapis.com/maps/api/geocode/json?address=Toledo&key=YOUR_API_KEY

Yanıt:

{
   "results" : [
      {
         "address_components" : [
            {
               "long_name" : "Toledo",
               "short_name" : "Toledo",
               "types" : [ "locality", "political" ]
            },
            {
               "long_name" : "Lucas County",
               "short_name" : "Lucas County",
               "types" : [ "administrative_area_level_2", "political" ]
            },
            {
               "long_name" : "Ohio",
               "short_name" : "OH",
               "types" : [ "administrative_area_level_1", "political" ]
            },
            {
               "long_name" : "United States",
               "short_name" : "US",
               "types" : [ "country", "political" ]
            }
         ],
         "formatted_address" : "Toledo, OH, USA",
         "geometry" : {
            "bounds" : {
               "northeast" : {
                  "lat" : 41.732844,
                  "lng" : -83.454229
               },
               "southwest" : {
                  "lat" : 41.580266,
                  "lng" : -83.69423700000002
               }
            },
            "location" : {
               "lat" : 41.6639383,
               "lng" : -83.55521200000001
            },
            "location_type" : "APPROXIMATE",
            "viewport" : {
               "northeast" : {
                  "lat" : 41.732844,
                  "lng" : -83.454229
               },
               "southwest" : {
                  "lat" : 41.580266,
                  "lng" : -83.69423700000002
               }
            }
         },
         "place_id" : "ChIJeU4e_C2HO4gRRcM6RZ_IPHw",
         "types" : [ "locality", "political" ]
      }
   ],
   "status" : "OK"
}

"Toledo" için Coğrafi Kodlama isteği region=es ile (İspanya) İspanyol şehrine dönelim.

İstek:

https://maps.googleapis.com/maps/api/geocode/json?address=Toledo&region=es&key=YOUR_API_KEY

Yanıt:

{
   "results" : [
      {
         "address_components" : [
            {
               "long_name" : "Toledo",
               "short_name" : "Toledo",
               "types" : [ "locality", "political" ]
            },
            {
               "long_name" : "Toledo",
               "short_name" : "TO",
               "types" : [ "administrative_area_level_2", "political" ]
            },
            {
               "long_name" : "Castile-La Mancha",
               "short_name" : "CM",
               "types" : [ "administrative_area_level_1", "political" ]
            },
            {
               "long_name" : "Spain",
               "short_name" : "ES",
               "types" : [ "country", "political" ]
            }
         ],
         "formatted_address" : "Toledo, Spain",
         "geometry" : {
            "bounds" : {
               "northeast" : {
                  "lat" : 39.88605099999999,
                  "lng" : -3.9192423
               },
               "southwest" : {
                  "lat" : 39.8383676,
                  "lng" : -4.0796176
               }
            },
            "location" : {
               "lat" : 39.8628316,
               "lng" : -4.027323099999999
            },
            "location_type" : "APPROXIMATE",
            "viewport" : {
               "northeast" : {
                  "lat" : 39.88605099999999,
                  "lng" : -3.9192423
               },
               "southwest" : {
                  "lat" : 39.8383676,
                  "lng" : -4.0796176
               }
            }
         },
         "place_id" : "ChIJ8f21C60Lag0R_q11auhbf8Y",
         "types" : [ "locality", "political" ]
      }
   ],
   "status" : "OK"
}

Bileşen filtreleme

Coğrafi Kodlama yanıtında, Coğrafi Kodlama API'si adres döndürebilir sonuç belirli bir alanla sınırlandırıldı. Kısıtlamayı components filtresini uygulayabilirsiniz. Filtre, boru (|) ile ayrılmış component:value çiftlerinin bir listesinden oluşur. Filtre değerleri, diğer coğrafi kodlama istekleriyle aynı yazım düzeltme ve kısmi eşleme yöntemlerini destekler. Coğrafi kodlayıcı, bileşen filtresini uyguladığınızda yanıt bir partial_match alanı içerir.

Filtrelenebilir components şunları içerir:

  • postal_code, postal_code ile eşleşir ve postal_code_prefix.
  • country, bir ülke adıyla veya iki harfle eşleşir ISO 3166-1 ülke kodu. API, Google Etiket Yöneticisi'nin en iyi sonucu verir. Filtre, ülkenin ilgili ISO kodu.

Aşağıdaki components, sonuçları etkilemek için kullanılabilir, ancak zorunlu kılınan:

  • route, bir rotanın uzun veya kısa adıyla eşleşir.
  • locality ile locality eşleşir ve sublocality tür.
  • administrative_area, administrative_area seviye.

Bileşen filtrelemeyle ilgili notlar:

  • Bu bileşen filtrelerini isteklerde tekrarlamayın. Aksi takdirde API, Invalid_request: country, postal_code, route
  • İstek tekrarlanan bileşen filtreleri içeriyorsa API bu filtreleri VE değil VEYA olarak değerlendirir.
  • Sonuçlar Google Haritalar ile tutarlıdır. Google Haritalar, zaman zaman beklenmeyen ZERO_RESULTS yanıt. Otomatik Yer Tamamlama özelliğini kullanma bazı kullanım durumlarında daha iyi sonuçlar sağlayabilir. Daha fazla bilgi edinmek için bkz. bu SSS.
  • Her bir adres bileşeni için bunu address içinde belirtin parametresinde veya components filtresinde kullanılabilir. Belirtme her ikisinde de aynı değerler ZERO_RESULTS ile sonuçlanabilir.

"High St, Hastings" için bir coğrafi kod components=country:GB ile birlikte sonucu Hastings-On-Hudson, ABD yerine Hastings, İngiltere dilinde döndürür.

İstek:

https://maps.googleapis.com/maps/api/geocode/json?address=high+st+hasting&components=country:GB&key=YOUR_API_KEY

Yanıt:

{
   "results" : [
      {
         "address_components" : [
            {
               "long_name" : "High Street",
               "short_name" : "High St",
               "types" : [ "route" ]
            },
            {
               "long_name" : "Hastings",
               "short_name" : "Hastings",
               "types" : [ "postal_town" ]
            },
            {
               "long_name" : "East Sussex",
               "short_name" : "East Sussex",
               "types" : [ "administrative_area_level_2", "political" ]
            },
            {
               "long_name" : "England",
               "short_name" : "England",
               "types" : [ "administrative_area_level_1", "political" ]
            },
            {
               "long_name" : "United Kingdom",
               "short_name" : "GB",
               "types" : [ "country", "political" ]
            },
            {
               "long_name" : "TN34 3EY",
               "short_name" : "TN34 3EY",
               "types" : [ "postal_code" ]
            }
         ],
         "formatted_address" : "High St, Hastings TN34 3EY, UK",
         "geometry" : {
            "bounds" : {
               "northeast" : {
                  "lat" : 50.8601041,
                  "lng" : 0.5957329
               },
               "southwest" : {
                  "lat" : 50.8559061,
                  "lng" : 0.5906163
               }
            },
            "location" : {
               "lat" : 50.85830319999999,
               "lng" : 0.5924594
            },
            "location_type" : "GEOMETRIC_CENTER",
            "viewport" : {
               "northeast" : {
                  "lat" : 50.8601041,
                  "lng" : 0.5957329
               },
               "southwest" : {
                  "lat" : 50.8559061,
                  "lng" : 0.5906163
               }
            }
         },
         "partial_match" : true,
         "place_id" : "ChIJ-Ws929sa30cRKgsMNVkPyws",
         "types" : [ "route" ]
      }
   ],
   "status" : "OK"
}

"Santa Cruz"un konumu için coğrafi kod isteği components=country:ES ile birlikte İspanya'nın Kanarya Adaları'ndan Santa Cruz de Tenerife'i iade ediyor.

İstek:

https://maps.googleapis.com/maps/api/geocode/json?components=locality:santa+cruz|country:ES&key=YOUR_API_KEY

Yanıt:

{
   "results" : [
      {
         "address_components" : [
            {
               "long_name" : "Santa Cruz de Tenerife",
               "short_name" : "Santa Cruz de Tenerife",
               "types" : [ "locality", "political" ]
            },
            {
               "long_name" : "Santa Cruz de Tenerife",
               "short_name" : "TF",
               "types" : [ "administrative_area_level_2", "political" ]
            },
            {
               "long_name" : "Canary Islands",
               "short_name" : "CN",
               "types" : [ "administrative_area_level_1", "political" ]
            },
            {
               "long_name" : "Spain",
               "short_name" : "ES",
               "types" : [ "country", "political" ]
            }
         ],
         "formatted_address" : "Santa Cruz de Tenerife, Spain",
         "geometry" : {
            "bounds" : {
               "northeast" : {
                  "lat" : 28.487616,
                  "lng" : -16.2356646
               },
               "southwest" : {
                  "lat" : 28.4280248,
                  "lng" : -16.3370045
               }
            },
            "location" : {
               "lat" : 28.4636296,
               "lng" : -16.2518467
            },
            "location_type" : "APPROXIMATE",
            "viewport" : {
               "northeast" : {
                  "lat" : 28.487616,
                  "lng" : -16.2356646
               },
               "southwest" : {
                  "lat" : 28.4280248,
                  "lng" : -16.3370045
               }
            }
         },
         "place_id" : "ChIJcUElzOzMQQwRLuV30nMUEUM",
         "types" : [ "locality", "political" ]
      }
   ],
   "status" : "OK"
}

Bileşen filtreleme yalnızca birbirini hariç tutan filtreler sağlarsanız ZERO_RESULTS yanıtı döndürür.

İstek:

https://maps.googleapis.com/maps/api/geocode/json?components=administrative_area:TX|country:FR&key=YOUR_API_KEY

Yanıt:

{
   "results" : [],
   "status" : "ZERO_RESULTS"
}

components filtresini kullanarak adres parametresi olmadan geçerli sorgular oluşturabilirsiniz. (Bir tam adresin coğrafi kodlamasını yaparken, İstekaddress bina adlarını ve numaralarını yazın.)

İstek:

https://maps.googleapis.com/maps/api/geocode/json?components=route:Annankatu|administrative_area:Helsinki|country:Finland&key=YOUR_API_KEY

Yanıt:

{
   "results" : [
      {
         "address_components" : [
            {
               "long_name" : "Annankatu",
               "short_name" : "Annankatu",
               "types" : [ "route" ]
            },
            {
               "long_name" : "Helsinki",
               "short_name" : "HKI",
               "types" : [ "locality", "political" ]
            },
            {
               "long_name" : "Finland",
               "short_name" : "FI",
               "types" : [ "country", "political" ]
            },
            {
               "long_name" : "00101",
               "short_name" : "00101",
               "types" : [ "postal_code" ]
            }
         ],
         "formatted_address" : "Annankatu, 00101 Helsinki, Finland",
         "geometry" : {
            "bounds" : {
               "northeast" : {
                  "lat" : 60.168997,
                  "lng" : 24.9433353
               },
               "southwest" : {
                  "lat" : 60.16226160000001,
                  "lng" : 24.9332897
               }
            },
            "location" : {
               "lat" : 60.1657808,
               "lng" : 24.938451
            },
            "location_type" : "GEOMETRIC_CENTER",
            "viewport" : {
               "northeast" : {
                  "lat" : 60.168997,
                  "lng" : 24.9433353
               },
               "southwest" : {
                  "lat" : 60.16226160000001,
                  "lng" : 24.9332897
               }
            }
         },
         "place_id" : "ChIJARW7C8sLkkYRgl4je4-RPUM",
         "types" : [ "route" ]
      }
   ],
   "status" : "OK"
}