Coğrafi kodlama terimi genellikle kullanıcılar tarafından okunabilir bir harita üzerinde bir konuma dönüştürmenizi sağlar. Bunun tam tersini yapma süreci haritadaki bir yeri kullanıcıların okuyabileceği bir adrese dönüştürmek, ters coğrafi kodlamayı kullanın.
Ters coğrafi kodlama istekleri
Gerekli parametreler
latlng
— Enlem ve boylam konuma en yakın konumu istediğiniz konumu belirten koordinatlar, okunabilir bir adres olmalıdır.key
— Uygulamanızın API anahtarı. Bu anahtar, bunu yapmanızı öneririz. Nasıl yapıldığını öğrenin bir anahtar al.
İsteğe bağlı parametreler
Bunlar, bir ters sorguya ekleyebileceğiniz isteğe bağlı parametrelerdir coğrafi kodlama isteği:
language
— Sonuçların döndürüleceği dil.- 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ı bölümünde belirtildiği şekilde tercih edilen dili kullanın.Accept-Language
üstbilgisi veya isteğin gönderildiği alan adı.- 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 biçimde döndürülür dili'ne dokunun. 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.
region
: ccTLD olarak belirtilen bölge kodu ("üst düzey alan") iki karakterlik değer. Parametre, sonuçları sayfasında görebilirsiniz.result_type
: Bir veya daha fazla adres türünü içeren filtre, dikey çizgiyle (|
) ayrılmalıdır. Parametre birden fazla değer içeriyorsa adres türlerinde API, türlerden herhangi biriyle eşleşen tüm adresleri döndürür. İşleme hakkında not:result_type
parametresi aramayı belirtilen adres türleriyle kısıtlayın. Bunun yerineresult_type
, arama sonrası filtre işlevi görür: API, belirtilenlatlng
için sonuçları siler, ardından bu sonuçları siler belirtilen adres türleriyle eşleşmiyor. Aşağıdaki değerler: desteklenir:street_address
, tam açık adresi gösterir.route
, adlandırılmış bir rotayı (ör. "TR 101") gösterir.intersection
, genellikle iki olan büyük bir kesişimi gösterir yollar bulunuyor.political
, siyasi bir tüzel kişiyi belirtir. 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
, ikinci 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 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 uluslar bu idari düzeylerde değildir.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 sivil toplum bölmesini belirtir. Tüm uluslar bu idari düzeylerde değildir.administrative_area_level_5
, beşinci sıradan bir sivil toplumu gösterir ülke düzeyinin altında bir öğe tutarıdır. Bu tür, küçük bir sivil toplum bölmesini 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 sivil toplum bölmesini 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 uluslar bu idari düzeylerde değildir.colloquial_area
, yaygın olarak kullanılan bir alternatif adı gösterir ilişkilidir.locality
, anonim bir şehir veya kasaba siyasetini belirtir varlık.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österirpremise
, adlandırılmış bir konumu (genellikle bir bina veya ortak bir ada sahip bina koleksiyonusubpremise
, 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 adplus_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".
location_type
: Bir veya daha fazla konum türünü içeren filtre, dikey çizgiyle (|
) ayrılmalıdır. Parametre birden fazla değer içeriyorsa konum türlerini seçerseniz API, türlerden herhangi biriyle eşleşen tüm adresleri döndürür. İşleme hakkında not:location_type
parametresi aramayı, belirtilen konum türleriyle kısıtla. Bunun yerinelocation_type
, arama sonrası filtre işlevi görür: API, belirtilenlatlng
için sonuçları siler, ardından bu sonuçları siler belirtilen konum türleriyle eşleşmeyenler olabilir. Aşağıdaki değerler desteklenir:"ROOFTOP"
, yalnızca Google'ın döndürdüğü adresleri döndürür açık adres kesinliğine kadar konum bilgilerine sahip."RANGE_INTERPOLATED"
yalnızca şu adresleri döndürür: genellikle yol üzerinde iki ara değer arasında kalan bir yaklaşık kesin noktalar (kesişimler gibi). Genellikle interpolasyon değeri içeren bir aralık bir sokak adresi için çatı coğrafi kodlarının kullanılamadığını gösterir."GEOMETRIC_CENTER"
yalnızca geometrik değeri döndürür Çoklu çizgi (örneğin, sokak) veya çokgen (bölge)."APPROXIMATE"
, yalnızca şu adresleri döndürür: değer yaklaşık olarak kabul edilir.
extra_computations
— şu ek özellikleri ekleyin:ADDRESS_DESCRIPTORS
— Bkz. adres tanımlayıcıları inceleyebilirsiniz.BUILDING_AND_ENTRANCES
— Bkz. girişlere ve bina ana hatlarına bakın.
extra_computations
parametresini kullanır, örneğin:extra_computations=ADDRESS_DESCRIPTORS&extra_computations=BUILDING_AND_ENTRANCES
Hem result_type
hem de location_type
filtreleri varsa API
yalnızca result_type
ve
location_type
değerleri. Filtre değerlerinin hiçbiri kabul edilmiyorsa
API, ZERO_RESULTS
değerini döndürür.
Ters coğrafi kodlama örneği
Aşağıdaki sorgu, Brooklyn'deki bir konumun enlem/boylam değerini içerir:
https://maps.googleapis.com/maps/api/geocode/json?latlng=40.714224,-73.961452&key=YOUR_API_KEY
Yukarıdaki sorgu aşağıdaki sonucu döndürür:
{
"results" : [
{
"address_components" : [
{
"long_name" : "277",
"short_name" : "277",
"types" : [ "street_number" ]
},
{
"long_name" : "Bedford Avenue",
"short_name" : "Bedford Ave",
"types" : [ "route" ]
},
{
"long_name" : "Williamsburg",
"short_name" : "Williamsburg",
"types" : [ "neighborhood", "political" ]
},
{
"long_name" : "Brooklyn",
"short_name" : "Brooklyn",
"types" : [ "sublocality", "political" ]
},
{
"long_name" : "Kings",
"short_name" : "Kings",
"types" : [ "administrative_area_level_2", "political" ]
},
{
"long_name" : "New York",
"short_name" : "NY",
"types" : [ "administrative_area_level_1", "political" ]
},
{
"long_name" : "United States",
"short_name" : "US",
"types" : [ "country", "political" ]
},
{
"long_name" : "11211",
"short_name" : "11211",
"types" : [ "postal_code" ]
}
],
"formatted_address" : "277 Bedford Avenue, Brooklyn, NY 11211, USA",
"geometry" : {
"location" : {
"lat" : 40.714232,
"lng" : -73.9612889
},
"location_type" : "ROOFTOP",
"viewport" : {
"northeast" : {
"lat" : 40.7155809802915,
"lng" : -73.9599399197085
},
"southwest" : {
"lat" : 40.7128830197085,
"lng" : -73.96263788029151
}
}
},
"place_id" : "ChIJd8BlQ2BZwokRAFUEcm_qrcA",
"types" : [ "street_address" ]
},
... Additional <code>results[]</code> ...
Ters coğrafi kodlayıcının birden fazla sonuç döndürdüğünü unutmayın. İlgili içeriği oluşturmak için kullanılan
"formatted_address"
sonuçları yalnızca posta adreslerini değil, aynı zamanda
herhangi bir şekilde adlandırabilir. Örneğin, bir noktanın coğrafi kodlamasını yaparken
coğrafi kodu bulunan nokta bir sokak adresi olarak gösterilebilir.
şehir (Şikago), eyaleti (Illinois) veya ülke (ABD)
Eyaletleri). Hepsi "adres"tir bağlantı kurulabilir. Ters coğrafi kodlayıcı,
geçerli sonuç olarak kabul edilir.
Ters coğrafi kodlayıcı siyasi tüzel kişiliklerle (ülkeler, iller, şehir ve mahalleler), açık adresler ve posta kodları.
formatted_address
önceki sorgu aşağıda gösteriliyor.
{
"plus_code" : {
"compound_code" : "P27Q+MCM New York, NY, USA",
"global_code" : "87G8P27Q+MCM"
},
"results" : [
{
"formatted_address" : "277 Bedford Ave, Brooklyn, NY 11211, USA",
...
"types" : [ "street_address" ]
},
{
"formatted_address" : "279 Bedford Ave, Brooklyn, NY 11211, USA",
...
"types" : [ "premise" ]
},
{
"formatted_address" : "277 Bedford Ave, Brooklyn, NY 11211, USA",
...
"types" : [ "establishment", "point_of_interest" ]
},
{
"formatted_address" : "291-275 Bedford Ave, Brooklyn, NY 11211, USA",
...
"types" : [ "route" ]
},
{
"formatted_address" : "P27Q+MC New York, NY, USA",
...
"types" : [ "plus_code" ]
},
{
"formatted_address" : "South Williamsburg, Brooklyn, NY, USA",
...
"types" : [ "neighborhood", "political" ]
},
{
"formatted_address" : "Brooklyn, NY 11211, USA",
...
"types" : [ "postal_code" ]
},
{
"formatted_address" : "Williamsburg, Brooklyn, NY, USA",
...
"types" : [ "neighborhood", "political" ]
},
{
"formatted_address" : "Kings County, Brooklyn, NY, USA",
...
"types" : [ "administrative_area_level_2", "political" ]
},
{
"formatted_address" : "Brooklyn, NY, USA",
...
"types" : [ "political", "sublocality", "sublocality_level_1" ]
},
{
"formatted_address" : "New York, NY, USA",
...
"types" : [ "locality", "political" ]
},
{
"formatted_address" : "New York, USA",
...
"types" : [ "administrative_area_level_1", "political" ]
},
{
"formatted_address" : "United States",
...
"types" : [ "country", "political" ]
}
],
"status" : "OK"
}
Bu API, en spesifik adreslerden farklı adres türleri mahalle gibi daha az belirgin siyasi oluşumlara şehirler ve eyaletler. Daha tam adres genellikle bu örnekte olduğu gibi belirgin sonuç. Belirli bir daha fazla bilgi için aşağıdaki kısıtlama türe göre filtreleyebilirsiniz. Bu nedenle, 2023'e göre sonuçların konumu birbiri arasında değişiklik gösterebilir.
Türe göre filtrelenen coğrafi kodlamayı tersine çevir
Aşağıdaki örnekte, döndürülen adresler yalnızca bu adresleri içerecek şekilde filtrelenmektedir
konum türü ROOFTOP
ve adres türü
street_address
.
https://maps.googleapis.com/maps/api/geocode/json?latlng=40.714224,-73.961452
&location_type=ROOFTOP&result_type=street_address&key=YOUR_API_KEY
Not: Bu filtreler yalnızca tersine coğrafi kodlama.
Coğrafi kodlama yanıtlarını tersine çevirme
Ters coğrafi kodlama yanıtının biçimi Coğrafi Kodlama ile aynıdır tıklayın. Yanıtların coğrafi kodlamasını yapma başlıklı makaleyi inceleyin. Aşağıda, ters coğrafi kodlama yanıtında bulunabilecek durum kodları verilmiştir.
Coğrafi kodlama durum kodlarını tersine çevir
Coğrafi Kodlama yanıt nesnesindeki "status"
alanı şunları içerir:
ve hata ayıklama bilgileri içerebilir. Ayrıca,
ve tersine coğrafi kodlamanın neden çalışmadığını anlamaktır. "status"
alanı aşağıdaki değerleri içerebilir:
"OK"
, herhangi bir hata oluşmadığını ve en az bir hata oluştuğunu belirtir döndürüldü."ZERO_RESULTS"
, ters coğrafi kodlamanın başarılı ancak hiçbir sonuç döndürmedi. Bu durum, coğrafi kodlayıcının uzak bir konumdalatlng
geçti."OVER_QUERY_LIMIT"
, kota."REQUEST_DENIED"
, isteğin reddedildiğini gösterir. Muhtemelen istekteresult_type
veyalocation_type
parametresi var ancak API anahtarı içermiyor."INVALID_REQUEST"
genellikle aşağıdakilerden birini gösterir:- Sorgu (
address
,components
veyalatlng
) eksik. - Geçersiz bir
result_type
veyalocation_type
: değeri.
- Sorgu (
"UNKNOWN_ERROR"
, isteğin gerçekleştirilemediğini gösterir işlendi. Aşağıdaki durumlarda istek başarılı olabilir: tekrar deneyin.
Ters coğrafi kodlama artı kodları
Coğrafi Kodlama yanıtındaki plus_code
alanı, şunu içeren bir artı kodu içerir:
sorgulanan enlem ve boylamı en iyi şekilde tahmin eder.
Buna ek olarak, JSON sonuç dizisi çoğu durumda tam bir Coğrafi Kodlama içerir
plus_code
türünde ve artı içeren bir adresle sonuç
girin. Kodu çözülmüş artı kodu ile istek noktası arasındaki mesafe şu şekildedir:
10 metrenin altında olacağı garanti edilir.