Yer Adı Otomatik Tamamlama (Eski), bir HTTP isteğine yanıt olarak yer tahminleri döndüren bir web hizmetidir. İstek, metin biçiminde bir arama dizesi ve isteğe bağlı coğrafi sınırlar belirtir. Bu hizmet, kullanıcılar yazarken işletmeler, adresler ve ilgi çekici yerler gibi yerleri döndürerek metin tabanlı coğrafi aramalarda otomatik tamamlama işlevi sağlamak için kullanılabilir.
Yer Adı Otomatik Tamamlama (Eski) istekleri
Yer Adı Otomatik Tamamlama (Eski), Places API'nin bir parçasıdır ve Places API ile API anahtarı ve kotaları paylaşır.
Yer Adı Otomatik Tamamlama (Eski) tam kelimeler ve alt dizelerle eşleşebilir, yer adlarını, adresleri ve Plus Code'ları çözebilir. Bu nedenle uygulamalar, kullanıcı yazarken anında yer tahminleri sağlamak için sorgu gönderebilir.
Artı kodları doğru şekilde biçimlendirmeniz gerekir. Bu nedenle, artı işaretini %2B olarak, boşlukları ise %20 olarak URL'den kaçırmanız gerekir.
- Global kod, dört karakterlik bir alan kodu ve altı karakterlik veya daha uzun bir yerel koddur. Örneğin, URL'de kaçış karakteri olarak kullanılan global kod
849VCWC8+R9,849VCWC8%2BR9şeklindedir. - Bileşik kod, açık bir konuma sahip altı karakterli (veya daha uzun) bir yerel koddur. Örneğin, URL'de çıkış karakteri eklenmiş bileşik kod
CWC8+R9 Mountain View, CA, USA,CWC8%2BR9%20Mountain%20View%20CA%20USAolur.
Döndürülen tahminler, kullanıcının istediği yeri seçmesine yardımcı olmak için tasarlanmıştır. Döndürülen yerlerden herhangi biri hakkında daha fazla bilgi edinmek için Yer Ayrıntıları (Eski) isteği gönderebilirsiniz.
Yer Adı Otomatik Tamamlama (Eski) isteği, aşağıdaki biçimde bir HTTP URL'sidir:
https://maps.googleapis.com/maps/api/place/autocomplete/output?parameters
Burada output aşağıdaki değerlerden biri olabilir:
json(önerilir) JavaScript Object Notation (JSON) biçiminde çıktı olduğunu gösterir.xml, çıkışın XML olarak gösterileceğini belirtir.
Yer Adı Otomatik Tamamlama (Eski) isteği başlatmak için belirli parametreler gereklidir.
URL'lerde standart olduğu gibi, tüm parametreler "ve" işareti (&) kullanılarak ayrılır. Parametrelerin listesi ve olası değerleri aşağıda sıralanmıştır.
Gerekli parametreler
-
giriş
Arama yapılacak metin dizesi. Yer Adı Otomatik Tamamlama hizmeti, bu dizeye göre olası eşleşmeleri döndürür ve sonuçları algılanan alaka düzeylerine göre sıralar.
İsteğe bağlı parametreler
-
bileşenler
Sonuçlarınızı kısıtlamak istediğiniz yerlerin gruplandırılması. Bileşenleri kullanarak en fazla 5 ülkeye göre filtreleme yapabilirsiniz. Ülkeler, iki karakterli, ISO 3166-1 Alpha-2 uyumlu bir ülke kodu olarak iletilmelidir. Örneğin:
components=country:fr, sonuçlarınızı Fransa'daki yerlerle sınırlar. Birden fazla ülke, ayırıcı olarak düşey çubuk karakteri|kullanılarak birden fazlacountry:XXfiltresi olarak aktarılmalıdır. Örneğin:components=country:us|country:pr|country:vi|country:gu|country:mpsonuçlarınızı ABD ve ABD'ye bağlı, tüzel kişiliği olmayan bölgelerle sınırlandırır.Not: Bir ülke koduyla beklenmedik sonuçlar alırsanız kullanmak istediğiniz ülkeleri, bağımlı bölgeleri ve coğrafi ilgi alanlarını içeren bir kod kullandığınızı doğrulayın. Kod bilgilerini Wikipedia: List of ISO 3166 country codes (Wikipedia: ISO 3166 ülke kodları listesi) veya ISO Online Browsing Platform'da (ISO Online Göz Atma Platformu) bulabilirsiniz. -
language
Sonuçların döndürüleceği dil.
- Desteklenen dillerin listesini inceleyin. Google, desteklenen dilleri sık sık güncellediği için bu liste kapsamlı olmayabilir.
-
languagesağlanmazsa API,Accept-Languageüstbilgisinde belirtilen tercih edilen dili kullanmaya çalışır. - API, hem kullanıcı hem de yerel halk tarafından okunabilir bir açık adres sağlamak için elinden geleni yapar. Bu hedefi gerçekleştirmek için tercih edilen dili dikkate alarak gerekirse kullanıcının okuyabileceği bir alfabeye çevrilmiş, yerel dildeki açık adresleri döndürür. Diğer tüm adresler tercih edilen dilde döndürülür. Adres bileşenlerinin tümü aynı dilde döndürülür. Bu dil, ilk bileşenden seçilir.
- Bir ad tercih edilen dilde kullanılamıyorsa API en yakın eşleşmeyi kullanır.
- Tercih edilen dil, API'nin döndürmeyi seçtiği sonuç kümesi ve bu sonuçların döndürülme sırası üzerinde küçük bir etkiye sahiptir. Coğrafi kodlayıcı, kısaltmaları dile bağlı olarak farklı yorumlar. Örneğin, sokak türlerinin kısaltmaları veya bir dilde geçerli olup başka bir dilde geçerli olmayan eş anlamlılar. Örneğin, Macarca'da utca ve tér, sokak kelimesinin eş anlamlılarıdır.
-
konum
Yer bilgilerinin alınacağı nokta. Bu,
latitude,longitudeolarak belirtilmelidir. Konum belirtilirkenradiusparametresi de sağlanmalıdır.radiussağlanmazsalocationparametresi yoksayılır.Text Search API kullanılırken `query` parametresi, `Barcelona'daki pazar` gibi açık bir konum içeriyorsa `location` parametresi geçersiz kılınabilir. -
locationbias
Yarıçap ve enlem/boylam ya da bir dikdörtgenin noktalarını temsil eden iki enlem/boylam çifti belirterek belirli bir alandaki sonuçları tercih edin. Bu parametre belirtilmezse API, varsayılan olarak IP adresi önyargısını kullanır.
-
IP önyargısı: API'ye IP adresi önyargısı kullanması talimatını verir. Dizeyi iletin.
ipbias(Bu seçeneğin ek parametreleri yoktur). -
Dairesel: Yarıçapı metre cinsinden belirten bir dize ve ondalık derece cinsinden enlem/boylam. Şu biçimi kullanın:
circle:radius@lat,lng. -
Dikdörtgen: Ondalık derece cinsinden iki enlem/boylam çifti belirten bir dize. Bu dize, dikdörtgenin güney/batı ve kuzey/doğu noktalarını temsil eder. Aşağıdaki biçimi kullanın:
rectangle:south,west|north,east. Doğu/batı değerlerinin -180 ile 180 aralığına, kuzey/güney değerlerinin ise -90 ile 90 aralığına kaydırıldığını unutmayın.
-
IP önyargısı: API'ye IP adresi önyargısı kullanması talimatını verir. Dizeyi iletin.
-
locationrestriction
Yarıçap ve enlem/boylam ya da dikdörtgenin noktalarını temsil eden iki enlem/boylam çifti belirterek sonuçları belirli bir alanla sınırlandırın.
-
Dairesel: Yarıçapı metre cinsinden belirten bir dize ve ondalık derece cinsinden enlem/boylam. Şu biçimi kullanın:
circle:radius@lat,lng. -
Dikdörtgen: Ondalık derece cinsinden iki enlem/boylam çifti belirten bir dize. Bu dize, dikdörtgenin güney/batı ve kuzey/doğu noktalarını temsil eder. Aşağıdaki biçimi kullanın:
rectangle:south,west|north,east. Doğu/batı değerlerinin -180 ile 180 aralığına, kuzey/güney değerlerinin ise -90 ile 90 aralığına kaydırıldığını unutmayın.
-
Dairesel: Yarıçapı metre cinsinden belirten bir dize ve ondalık derece cinsinden enlem/boylam. Şu biçimi kullanın:
-
telafi etmek
Hizmetin tahminleri eşleştirmek için kullandığı son karakterin giriş terimindeki konumu. Örneğin, giriş
Googleise ve ofset 3 ise hizmetGooile eşleşir. Ofset ile belirlenen dize yalnızca giriş terimindeki ilk kelimeyle eşleştirilir. Örneğin, giriş terimiGoogle abcise ve ofset 3 ise hizmet,Goo abcile eşleşmeye çalışır. Bir kaydırma değeri sağlanmazsa hizmet, terimin tamamını kullanır. Kaydırma genellikle metin imlecinin konumuna ayarlanmalıdır. -
kaynak
Hedefe olan kuş uçuşu mesafenin hesaplanacağı başlangıç noktası (
distance_metersolarak döndürülür). Bu değer atlanırsa kuş uçuşu mesafe döndürülmez.latitude,longitudeolarak belirtilmelidir. -
yarıçap
Yer sonuçlarının döndürüleceği mesafeyi (metre cinsinden) tanımlar.
locationveradiusparametrelerini ileterek sonuçları belirli bir daireye göre yönlendirebilirsiniz. Bu işlem, Yerler hizmetine bu dairenin içindeki sonuçları göstermeyi tercih etmesi talimatını verir. Tanımlanan alanın dışındaki sonuçlar yine de gösterilebilir.Yarıçap, arama türüne ve diğer parametrelere bağlı olarak otomatik olarak maksimum değerle sınırlandırılır.
- Otomatik tamamlama: 50.000 metre
-
Yakında Arama:
keywordveyanameile: 50.000 metre-
keywordveyanameolmadan-
Alan yoğunluğuna göre dinamik olarak ayarlanır ve
rankbyparametresinden bağımsız olarak 50.000 metreye kadar. -
rankby=distancekullanılırken yarıçap parametresi kabul edilmez veINVALID_REQUESTile sonuçlanır.
-
Alan yoğunluğuna göre dinamik olarak ayarlanır ve
- Otomatik Sorgu Tamamlama: 50.000 metre
- Metin Arama: 50.000 metre
-
bölge
ccTLD ("üst düzey alan") olarak belirtilen bölge kodu, iki karakterli bir değerdir. Çoğu ccTLD kodu, ISO 3166-1 kodlarıyla aynıdır. Ancak bazı önemli istisnalar vardır. Örneğin, Birleşik Krallık'ın ccTLD'si "uk" (.co.uk), ISO 3166-1 kodu ise "gb"dir (teknik olarak "Büyük Britanya ve Kuzey İrlanda Birleşik Krallığı" tüzel kişiliği için).
-
sessiontoken
Faturalandırma amacıyla bir otomatik tamamlama oturumunu tanımlayan rastgele bir dize.
Oturum, kullanıcının sorgu yazmaya başlamasıyla başlar ve bir yer seçip Yer Ayrıntıları çağrısı yapmasıyla sona erer. Her oturumda birden fazla sorgu ve ardından bir yer seçimi olabilir. Bir oturumdaki her istek için kullanılan API anahtarları aynı Google Cloud Console projesine ait olmalıdır. Bir oturum sona erdiğinde jeton artık geçerli olmaz. Uygulamanız her oturum için yeni bir jeton oluşturmalıdır.
sessiontokenparametresi atlanırsa veya oturum jetonu yeniden kullanılırsa oturum, oturum jetonu sağlanmamış gibi ücretlendirilir (her istek ayrı olarak faturalandırılır).Aşağıdaki yönergeleri uygulamanızı öneririz:
- Tüm otomatik tamamlama oturumları için oturum jetonlarını kullanın.
- Her oturum için yeni bir jeton oluşturun. Sürüm 4 UUID kullanmanız önerilir.
- Bir oturumdaki tüm Yer Adı Otomatik Tamamlama ve Yer Ayrıntıları istekleri için kullanılan API anahtarlarının aynı Cloud Console projesine ait olduğundan emin olun.
- Her yeni oturum için benzersiz bir oturum jetonu ilettiğinizden emin olun. Birden fazla oturum için aynı jetonun kullanılması, her isteğin ayrı ayrı faturalandırılmasına neden olur.
-
strictbounds
Yalnızca
locationveradiusile tanımlanan bölgenin kesin sınırları içinde kalan yerleri döndürür. Bu bir önyargı değil, kısıtlamadır. Bu nedenle, kullanıcı girişiyle eşleşse bile bu bölgenin dışındaki sonuçlar döndürülmez. -
türler
typesparametresini ileterek, Yer Adı Otomatik Tamamlama isteğindeki sonuçları belirli bir türle kısıtlayabilirsiniz. Bu parametre, Yer Türleri'nde listelendiği gibi bir türü veya tür koleksiyonunu belirtir. Hiçbir şey belirtilmezse tüm türler döndürülür.Bir yer, yalnızca 1. Tablo veya 2. Tablo'da listelenen türlerden tek bir birincil türe sahip olabilir. Örneğin, yemek servisi yapılan bir otel yalnızca
types=lodgingile döndürülebilir,types=restaurantile döndürülemez.typesparametresinin değeri için şunlardan birini belirtebilirsiniz:-
Tablo 1 veya Tablo 2'den en fazla beş değer. Birden çok değer için her değeri
|(dikey çubuk) ile ayırın. Örneğin:types=book_store|cafe -
Tablo 3'teki desteklenen filtrelerden herhangi biri. Tür koleksiyonlarını karıştıramazsınız.
İstek şu durumlarda
INVALID_REQUESThatasıyla reddedilir: -
Yer Adı Otomatik Tamamlama (Eski) örnekleri
Merkezi San Francisco, Kaliforniya'da bulunan bir bölgede "Amoeba" dizesini içeren işletmeler için yapılan bir istek:
URL
https://maps.googleapis.com/maps/api/place/autocomplete/json ?input=amoeba &types=establishment &location=37.76999%2C-122.44696 &radius=500 &key=YOUR_API_KEY
curl
curl -L -X GET 'https://maps.googleapis.com/maps/api/place/autocomplete/json?input=amoeba&types=establishment&location=37.76999%2C-122.44696&radius=500&key=YOUR_API_KEY'Aynı istek, San Francisco'daki Ashbury St ve Haight St'nin 500 metre çevresindeki sonuçlarla sınırlı olacak şekilde:
URL
https://maps.googleapis.com/maps/api/place/autocomplete/json ?input=amoeba &types=establishment &location=37.76999%2C-122.44696&radius=500 &strictbounds=true &key=YOUR_API_KEY
curl
curl -L -X GET 'https://maps.googleapis.com/maps/api/place/autocomplete/json?input=amoeba&types=establishment&location=37.76999%2C-122.44696&radius=500&strictbounds=true&key=YOUR_API_KEY'Fransızca sonuçlar içeren "Vict" kelimesini içeren adresler için istek:
URL
https://maps.googleapis.com/maps/api/place/autocomplete/json ?input=Vict &types=geocode &language=fr &key=YOUR_API_KEY
curl
curl -L -X GET 'https://maps.googleapis.com/maps/api/place/autocomplete/json?input=Vict&types=geocode&language=fr&key=YOUR_API_KEY'"Vict" içeren şehirlerle ilgili Brezilya Portekizcesi sonuçlar içeren bir istek:
URL
https://maps.googleapis.com/maps/api/place/autocomplete/json ?input=Vict &types=(cities) &language=pt_BR&key=YOUR_API_KEY
curl
curl -L -X GET 'https://maps.googleapis.com/maps/api/place/autocomplete/json?input=Vict&types=(cities)&language=pt_BR&key=YOUR_API_KEY'Bu örneklerdeki API anahtarını kendi anahtarınızla değiştirmeniz gerektiğini unutmayın.
Yer Adı Otomatik Tamamlama (Eski) yanıtı
Yer Adı Otomatik Tamamlama (Eski) yanıtları, isteğin URL yolundaki output işaretiyle belirtilen biçimde döndürülür. Aşağıdaki sonuçlar, şu parametreleri içeren bir sorgu için döndürülebilecek sonuçları gösterir:
URL
https://maps.googleapis.com/maps/api/place/autocomplete/json ?input=Paris &types=geocode &key=YOUR_API_KEY
curl
curl -L -X GET 'https://maps.googleapis.com/maps/api/place/autocomplete/json?input=Paris&types=geocode&key=YOUR_API_KEY'JSON
{ "predictions": [ { "description": "Paris, France", "matched_substrings": [{ "length": 5, "offset": 0 }], "place_id": "ChIJD7fiBh9u5kcRYJSMaMOCCwQ", "reference": "ChIJD7fiBh9u5kcRYJSMaMOCCwQ", "structured_formatting": { "main_text": "Paris", "main_text_matched_substrings": [{ "length": 5, "offset": 0 }], "secondary_text": "France", }, "terms": [ { "offset": 0, "value": "Paris" }, { "offset": 7, "value": "France" }, ], "types": ["locality", "political", "geocode"], }, { "description": "Paris, TX, USA", "matched_substrings": [{ "length": 5, "offset": 0 }], "place_id": "ChIJmysnFgZYSoYRSfPTL2YJuck", "reference": "ChIJmysnFgZYSoYRSfPTL2YJuck", "structured_formatting": { "main_text": "Paris", "main_text_matched_substrings": [{ "length": 5, "offset": 0 }], "secondary_text": "TX, USA", }, "terms": [ { "offset": 0, "value": "Paris" }, { "offset": 7, "value": "TX" }, { "offset": 11, "value": "USA" }, ], "types": ["locality", "political", "geocode"], }, { "description": "Paris, TN, USA", "matched_substrings": [{ "length": 5, "offset": 0 }], "place_id": "ChIJ4zHP-Sije4gRBDEsVxunOWg", "reference": "ChIJ4zHP-Sije4gRBDEsVxunOWg", "structured_formatting": { "main_text": "Paris", "main_text_matched_substrings": [{ "length": 5, "offset": 0 }], "secondary_text": "TN, USA", }, "terms": [ { "offset": 0, "value": "Paris" }, { "offset": 7, "value": "TN" }, { "offset": 11, "value": "USA" }, ], "types": ["locality", "political", "geocode"], }, { "description": "Paris, Brant, ON, Canada", "matched_substrings": [{ "length": 5, "offset": 0 }], "place_id": "ChIJsamfQbVtLIgR-X18G75Hyi0", "reference": "ChIJsamfQbVtLIgR-X18G75Hyi0", "structured_formatting": { "main_text": "Paris", "main_text_matched_substrings": [{ "length": 5, "offset": 0 }], "secondary_text": "Brant, ON, Canada", }, "terms": [ { "offset": 0, "value": "Paris" }, { "offset": 7, "value": "Brant" }, { "offset": 14, "value": "ON" }, { "offset": 18, "value": "Canada" }, ], "types": ["neighborhood", "political", "geocode"], }, { "description": "Paris, KY, USA", "matched_substrings": [{ "length": 5, "offset": 0 }], "place_id": "ChIJsU7_xMfKQ4gReI89RJn0-RQ", "reference": "ChIJsU7_xMfKQ4gReI89RJn0-RQ", "structured_formatting": { "main_text": "Paris", "main_text_matched_substrings": [{ "length": 5, "offset": 0 }], "secondary_text": "KY, USA", }, "terms": [ { "offset": 0, "value": "Paris" }, { "offset": 7, "value": "KY" }, { "offset": 11, "value": "USA" }, ], "types": ["locality", "political", "geocode"], }, ], "status": "OK", }
XML
<?xml version="1.0" encoding="UTF-8"?> <AutocompletionResponse> <status>OK</status> <prediction> <description>Paris, France</description> <type>locality</type> <type>political</type> <type>geocode</type> <reference>ChIJD7fiBh9u5kcRYJSMaMOCCwQ</reference> <term> <value>Paris</value> <offset>0</offset> </term> <term> <value>France</value> <offset>7</offset> </term> <matched_substring> <offset>0</offset> <length>5</length> </matched_substring> <place_id>ChIJD7fiBh9u5kcRYJSMaMOCCwQ</place_id> <structured_formatting> <description>Paris</description> <subdescription>France</subdescription> <description_matched_substring> <offset>0</offset> <length>5</length> </description_matched_substring> </structured_formatting> </prediction> <prediction> <description>Paris, TX, USA</description> <type>locality</type> <type>political</type> <type>geocode</type> <reference>ChIJmysnFgZYSoYRSfPTL2YJuck</reference> <term> <value>Paris</value> <offset>0</offset> </term> <term> <value>TX</value> <offset>7</offset> </term> <term> <value>USA</value> <offset>11</offset> </term> <matched_substring> <offset>0</offset> <length>5</length> </matched_substring> <place_id>ChIJmysnFgZYSoYRSfPTL2YJuck</place_id> <structured_formatting> <description>Paris</description> <subdescription>TX, USA</subdescription> <description_matched_substring> <offset>0</offset> <length>5</length> </description_matched_substring> </structured_formatting> </prediction> <prediction> <description>Paris, TN, USA</description> <type>locality</type> <type>political</type> <type>geocode</type> <reference>ChIJ4zHP-Sije4gRBDEsVxunOWg</reference> <term> <value>Paris</value> <offset>0</offset> </term> <term> <value>TN</value> <offset>7</offset> </term> <term> <value>USA</value> <offset>11</offset> </term> <matched_substring> <offset>0</offset> <length>5</length> </matched_substring> <place_id>ChIJ4zHP-Sije4gRBDEsVxunOWg</place_id> <structured_formatting> <description>Paris</description> <subdescription>TN, USA</subdescription> <description_matched_substring> <offset>0</offset> <length>5</length> </description_matched_substring> </structured_formatting> </prediction> <prediction> <description>Paris, Brant, ON, Canada</description> <type>neighborhood</type> <type>political</type> <type>geocode</type> <reference>ChIJsamfQbVtLIgR-X18G75Hyi0</reference> <term> <value>Paris</value> <offset>0</offset> </term> <term> <value>Brant</value> <offset>7</offset> </term> <term> <value>ON</value> <offset>14</offset> </term> <term> <value>Canada</value> <offset>18</offset> </term> <matched_substring> <offset>0</offset> <length>5</length> </matched_substring> <place_id>ChIJsamfQbVtLIgR-X18G75Hyi0</place_id> <structured_formatting> <description>Paris</description> <subdescription>Brant, ON, Canada</subdescription> <description_matched_substring> <offset>0</offset> <length>5</length> </description_matched_substring> </structured_formatting> </prediction> <prediction> <description>Paris, KY, USA</description> <type>locality</type> <type>political</type> <type>geocode</type> <reference>ChIJsU7_xMfKQ4gReI89RJn0-RQ</reference> <term> <value>Paris</value> <offset>0</offset> </term> <term> <value>KY</value> <offset>7</offset> </term> <term> <value>USA</value> <offset>11</offset> </term> <matched_substring> <offset>0</offset> <length>5</length> </matched_substring> <place_id>ChIJsU7_xMfKQ4gReI89RJn0-RQ</place_id> <structured_formatting> <description>Paris</description> <subdescription>KY, USA</subdescription> <description_matched_substring> <offset>0</offset> <length>5</length> </description_matched_substring> </structured_formatting> </prediction> </AutocompletionResponse>
PlacesAutocompleteResponse
| Alan | Zorunlu | Tür | Açıklama |
|---|---|---|---|
|
required | Array<PlaceAutocompletePrediction> |
Tahmin dizisi içerir. Daha fazla bilgi için PlaceAutocompletePrediction bölümünü inceleyin. |
|
required | PlacesAutocompleteStatus |
İsteğin durumunu içerir ve isteğin neden başarısız olduğunu bulmanıza yardımcı olacak hata ayıklama bilgileri içerebilir. Daha fazla bilgi için PlacesAutocompleteStatus bölümüne bakın. |
|
isteğe bağlı | dize |
Hizmet |
|
isteğe bağlı | Array<string> |
Hizmet, istek spesifikasyonu hakkında ek bilgiler döndürdüğünde yanıt nesnesinde ek bir |
Sonuçlarda özellikle dikkat çeken place_id
öğeleri, ayrı bir sorgu kullanılarak yer hakkında daha ayrıntılı bilgi istemek için kullanılabilir. Yer Ayrıntıları (Eski) isteklerine bakın.
XML yanıtı, iki tür alt öğeye sahip tek bir <AutocompletionResponse> öğesinden oluşur:
- Tek bir
<status>öğesi, istekle ilgili meta verileri içerir. Aşağıdaki Durum Kodları'na bakın. - Her biri tek bir yerle ilgili bilgi içeren 0 veya daha fazla
<prediction>öğe. Bu sonuçlar hakkında bilgi için Yer Adı Otomatik Tamamlama (Eski) Sonuçları başlıklı makaleyi inceleyin. Places API en fazla 5 sonuç döndürür.
Uygulamanızın herhangi bir nedenle xml gerektirmediği sürece tercih edilen çıkış işareti olarak json kullanmanızı öneririz.
XML ağaçlarının işlenmesi, doğru düğümlere ve öğelere referans vermeniz için biraz dikkat gerektirir. XML işleme konusunda yardım için XPath ile XML İşleme başlıklı makaleye bakın.
PlacesAutocompleteStatus
Hizmet tarafından döndürülen durum kodları.
OK, API isteğinin başarılı olduğunu gösterir.-
ZERO_RESULTS, aramanın başarılı olduğunu ancak sonuç döndürmediğini gösterir. Bu durum, arama uzak bir konumda sınırlara göre yapıldığında ortaya çıkabilir. -
INVALID_REQUEST, API isteğinin hatalı biçimlendirildiğini gösterir. Bu durum genellikleinputparametresinin eksik olmasından kaynaklanır. -
OVER_QUERY_LIMITaşağıdakilerden herhangi birini gösteriyorsa:- Saniyedeki sorgu sınırlarını aştınız.
- Hesabınızda faturalandırma etkinleştirilmemiştir.
- Aylık 200 ABD doları kredi veya kendinizin belirlediği kullanım sınırı aşılmıştır.
- Belirtilen ödeme yöntemi artık geçerli değil (ör. kredi kartının süresi dolmuş).
-
REQUEST_DENIED. Bu e-postada, isteğinizin reddedildiği belirtilir. Bunun nedeni genellikle:- İstek API anahtarı içermiyor.
keyparametresi geçersiz.
UNKNOWN_ERRORbilinmeyen bir hatayı gösterir.
Yer hizmeti, bir aramadan JSON sonuçları döndürdüğünde bunları predictions dizisine yerleştirir. Hizmet sonuç döndürmese bile (ör. location uzaktaysa) boş bir predictions dizisi döndürür. XML yanıtları sıfır veya daha fazla <prediction> öğesinden oluşur.
PlaceAutocompletePrediction
| Alan | Zorunlu | Tür | Açıklama |
|---|---|---|---|
|
required | dize |
Döndürülen sonucun kullanıcılar tarafından okunabilen adını içerir. |
|
required | Array<PlaceAutocompleteMatchedSubstring> |
Girilen terimin tahmin sonucu metnindeki konumunu açıklayan alt dizelerin listesi. Böylece, seçilirse terim vurgulanabilir. Daha fazla bilgi için PlaceAutocompleteMatchedSubstring bölümüne bakın. |
|
required | PlaceAutocompleteStructuredFormat |
Otomatik tamamlama sonuçlarınızda gösterilebilecek önceden biçimlendirilmiş metinler sağlar. Bu içerik olduğu gibi okunmalıdır. Biçimlendirilmiş adres programatik olarak ayrıştırılmamalıdır. Daha fazla bilgi için PlaceAutocompleteStructuredFormat bölümüne bakın. |
|
required | Array<PlaceAutocompleteTerm> |
Döndürülen açıklamanın her bölümünü tanımlayan bir terim dizisi içerir (açıklamanın bir bölümü genellikle virgülle sonlandırılır). Dizideki her giriş, terimin metnini içeren bir Daha fazla bilgi için PlaceAutocompleteTerm bölümüne bakın. |
|
isteğe bağlı | tam sayı |
Başlangıç noktasından olan düz çizgi mesafesi (metre). Bu alan yalnızca |
|
isteğe bağlı | dize |
Bir yeri benzersiz şekilde tanımlayan metin tanımlayıcısı. Yerle ilgili bilgileri almak için bu tanımlayıcıyı bir Places API isteğinin placeId alanına iletin. Yer kimlikleri hakkında daha fazla bilgi için Yer kimlikleri genel bakışına bakın. |
|
isteğe bağlı | dize |
place_id'yi inceleyin. |
|
isteğe bağlı | Array<string> |
Bu yer için geçerli olan çeşitli türleri içerir. Örneğin:
|
PlaceAutocompleteMatchedSubstring
| Alan | Zorunlu | Tür | Açıklama |
|---|---|---|---|
|
required | sayı |
Tahmin sonucu metninde eşleşen alt dizenin uzunluğu. |
|
required | sayı |
Tahmin sonucu metninde eşleşen alt dizenin başlangıç konumu. |
PlaceAutocompleteStructuredFormat
| Alan | Zorunlu | Tür | Açıklama |
|---|---|---|---|
|
required | dize |
Genellikle yerin adı olan bir tahminin ana metnini içerir. |
|
required | Array<PlaceAutocompleteMatchedSubstring> |
Daha fazla bilgi için PlaceAutocompleteMatchedSubstring bölümüne bakın. |
|
isteğe bağlı | dize |
Bir tahminin ikincil metnini (genellikle yerin konumu) içerir. |
|
isteğe bağlı | Array<PlaceAutocompleteMatchedSubstring> |
Daha fazla bilgi için PlaceAutocompleteMatchedSubstring bölümüne bakın. |
PlaceAutocompleteTerm
| Alan | Zorunlu | Tür | Açıklama |
|---|---|---|---|
|
required | sayı |
Bu terimin açıklamada Unicode karakterleriyle ölçülen başlangıç konumunu tanımlar. |
|
required | dize |
Terimin metni. |
Yer Adı Otomatik Tamamlama (Eski) optimizasyonu
Bu bölümde, Yer Adı Otomatik Tamamlama (Eski) hizmetinden en iyi şekilde yararlanmanıza yardımcı olacak en iyi uygulamalar açıklanmaktadır.
Genel kurallardan bazıları şunlardır:
- Çalışan bir kullanıcı arayüzü geliştirmenin en hızlı yolu şunları kullanmaktır: Maps JavaScript API Yer Adı Otomatik Tamamlama (Eski) widget'ı, Android için Yerler SDK'sı Yer Adı Otomatik Tamamlama (Eski) widget'ı, veya iOS için Yerler SDK'sı Yer Adı Otomatik Tamamlama (Eski) kullanıcı arayüzü kontrolü.
- Başlangıçtan itibaren temel Yer Adı Otomatik Tamamlama (Eski) veri alanlarını anlayın.
- Konum tercihi ve konum kısıtlama alanları isteğe bağlıdır ancak otomatik tamamlama performansını önemli ölçüde etkileyebilir.
- API hata döndürürse uygulamanızın sorunsuz bir şekilde çalışmaya devam etmesini sağlamak için hata işlemeyi kullanın.
- Uygulamanızın seçim yapılmadığı durumları yönettiğinden ve kullanıcılara devam etme yolu sunduğundan emin olun.
Maliyet optimizasyonu ile ilgili en iyi uygulamalar
Temel maliyet optimizasyonu
Yer Adı Otomatik Tamamlama (Eski) hizmetinin kullanım maliyetini optimize etmek için Yer Ayrıntıları (Eski) ve Yer Adı Otomatik Tamamlama (Eski) widget'larında alan maskeleri kullanarak yalnızca ihtiyacınız olan Yer Adı Otomatik Tamamlama (Eski) veri alanlarını döndürün.
Gelişmiş maliyet optimizasyonu
SKU: Otomatik Tamamlama - İstek Başına fiyatlandırma'ya erişmek ve Yer Ayrıntıları (Eski) yerine seçilen yerle ilgili Geocoding API sonuçları istemek için Yer Adı Otomatik Tamamlama (Eski) özelliğini programatik olarak uygulamayı düşünebilirsiniz. Aşağıdaki koşulların her ikisi de karşılanıyorsa Geocoding API ile birlikte kullanılan istek başına fiyatlandırma, oturum başına (oturum tabanlı) fiyatlandırmaya kıyasla daha uygun maliyetlidir:
- Yalnızca kullanıcının seçtiği yerin enlemi/boylamı veya adresi gerekiyorsa Geocoding API, bu bilgileri Yer Ayrıntıları (Eski) çağrısından daha düşük bir maliyetle sağlar.
- Kullanıcılar, ortalama dört veya daha az Yer Adı Otomatik Tamamlama (Eski) tahmin isteği içinde bir otomatik tamamlama tahmini seçerse istek başına fiyatlandırma, oturum başına fiyatlandırmaya kıyasla daha uygun maliyetli olabilir.
Uygulamanız, seçilen tahminin adresi ve enlem/boylamı dışında herhangi bir bilgi gerektiriyor mu?
Evet, daha fazla ayrıntı gerekiyor
Yer Ayrıntıları (Eski) ile oturum tabanlı Yer Adı Otomatik Tamamlama'yı (Eski) kullanın.
Uygulamanızda yer adı, işletme durumu veya çalışma saatleri gibi Yer Ayrıntıları (Eski) gerektiğinden Yer Otomatik Tamamlama (Eski) uygulamanızda oturum jetonu (programatik olarak veya JavaScript, Android ya da iOS widget'larına yerleştirilmiş) oturum başına ve talep ettiğiniz yer verileri alanlarına bağlı olarak geçerli Yerler Verileri SKU'ları kullanılmalıdır.1
Widget uygulaması
Oturum yönetimi, otomatik olarak
JavaScript,
Android,
veya iOS
widget'larına yerleştirilmiştir. Buna, seçilen tahmindeki hem Yer Adı Otomatik Tamamlama (Eski) istekleri hem de Yer Ayrıntıları (Eski) isteği dahildir. Yalnızca ihtiyacınız olan Yer Adı Otomatik Tamamlama (Eski) veri alanlarını istediğinizden emin olmak için fields parametresini belirttiğinizden emin olun.
Programatik uygulama
Yer Adı Otomatik Tamamlama (Eski) isteklerinizle birlikte
oturum jetonu
kullanın. Seçilen tahminle ilgili yer ayrıntıları (eski) isteğinde bulunurken aşağıdaki parametreleri ekleyin:
- Yer Adı Otomatik Tamamlama (Eski) yanıtındaki yer kimliği
- Yer Adı Otomatik Tamamlama (Eski) isteğinde kullanılan oturum jetonu
- İhtiyacınız olan Yer Adı Otomatik Tamamlama (Eski) veri alanlarını belirten
fieldsparametresi
Hayır, yalnızca adres ve konum gerekiyor
Yer Adı Otomatik Tamamlama (Eski) kullanımınızın performansına bağlı olarak, Geocoding API, uygulamanız için Yer Ayrıntıları (Eski) API'sinden daha uygun maliyetli bir seçenek olabilir. Her uygulamanın Yer Adı Otomatik Tamamlama (Legacy) verimliliği, kullanıcıların ne girdiğine, uygulamanın nerede kullanıldığına ve performans optimizasyonuyla ilgili en iyi uygulamaların uygulanıp uygulanmadığına bağlı olarak değişir.
Aşağıdaki soruyu yanıtlamak için bir kullanıcının uygulamanızda Yer Adı Otomatik Tamamlama (Eski) tahmini seçmeden önce ortalama kaç karakter yazdığını analiz edin.
Kullanıcılarınız ortalama olarak dört veya daha az istekte bir Yer Adı Otomatik Tamamlama (Eski) tahmini seçiyor mu?
Evet
Yer Adı Otomatik Tamamlama (Eski) programını oturum jetonları olmadan programatik olarak uygulayın ve seçilen yer tahmini için Geocoding API'sini çağırın.
Geocoding API, adresleri ve enlem/boylam koordinatlarını sağlar.
Seçilen yer tahminiyle ilgili dört Otomatik Tamamlama - İstek Başına isteği ve bir Geocoding API çağrısı yapmak, oturum başına Yer Adı Otomatik Tamamlama (Eski) oturum başına maliyetinden daha düşüktür.1
Kullanıcılarınızın aradıkları tahmini daha da az karakterle almalarına yardımcı olmak için performansla ilgili en iyi uygulamaları kullanabilirsiniz.
Hayır
Yer Ayrıntıları (Eski) ile oturum tabanlı Yer Adı Otomatik Tamamlama'yı (Eski) kullanın.
Kullanıcı bir Yer Adı Otomatik Tamamlama (Eski) tahmini seçmeden önce yapmayı beklediğiniz ortalama istek sayısı, oturum başına fiyatlandırmanın maliyetini aştığından Yer Adı Otomatik Tamamlama (Eski) uygulamanız hem Yer Adı Otomatik Tamamlama (Eski) istekleri hem de ilişkili Yer Ayrıntıları (Eski) isteği için oturum başına bir oturum jetonu kullanmalıdır.
1
Widget uygulaması
Oturum yönetimi,
JavaScript,
Android,
veya iOS
widget'larına otomatik olarak yerleştirilir. Buna, seçilen tahmindeki hem Yer Adı Otomatik Tamamlama (Eski) istekleri hem de Yer Ayrıntıları (Eski) isteği dahildir. Yalnızca ihtiyacınız olan alanları istediğinizden emin olmak için fields parametresini belirttiğinizden emin olun.
Programatik uygulama
Yer Adı Otomatik Tamamlama (Eski) isteklerinizle birlikte
oturum jetonu
kullanın.
Seçilen tahminle ilgili Yer Ayrıntıları (Eski) isteğinde bulunurken aşağıdaki parametreleri ekleyin:
- Yer Adı Otomatik Tamamlama (Eski) yanıtındaki yer kimliği
- Yer Adı Otomatik Tamamlama (Eski) isteğinde kullanılan oturum jetonu
- Adres ve geometri gibi
fieldsparametreleri belirten Temel Veri alanları
Yer Adı Otomatik Tamamlama (Eski) isteklerini geciktirmeyi düşünün
Uygulamanızın daha az istekte bulunması için Yer Adı Otomatik Tamamlama (Eski) isteğini kullanıcı ilk üç veya dört karakteri yazana kadar geciktirme gibi stratejiler kullanabilirsiniz. Örneğin, kullanıcının üçüncü karakteri yazmasından sonra her karakter için Yer Adı Otomatik Tamamlama (Eski) isteğinde bulunmak, kullanıcının yedi karakter yazıp bir Geocoding API isteğinde bulunduğunuz bir tahmini seçmesi durumunda toplam maliyetin 4 Yer Adı Otomatik Tamamlama (Eski) İstek Başına + Geocoding olacağı anlamına gelir.1
İstekleri geciktirerek ortalama programatik istek sayınızı dörtten aşağıya düşürebilirseniz Geokodlama API'si ile yüksek performanslı Yer Adı Otomatik Tamamlama (Eski) uygulamasıyla ilgili yönergeleri uygulayabilirsiniz. İsteklerin geciktirilmesinin, her yeni tuş vuruşunda tahmin görmeyi bekleyen kullanıcı tarafından gecikme olarak algılanabileceğini unutmayın.
Kullanıcılarınızın aradığı tahmini daha az karakterle almasına yardımcı olmak için performansla ilgili en iyi uygulamaları kullanabilirsiniz.
-
Maliyetler için Google Haritalar Platformu fiyatlandırma listelerine bakın.
Performansla ilgili en iyi uygulamalar
Aşağıdaki yönergelerde, Yer Adı Otomatik Tamamlama (Eski) performansını optimize etmenin yolları açıklanmaktadır:
- Yer Adı Otomatik Tamamlama (Eski) uygulamanıza ülkeye özgü kısıtlamalar, konum önyargısı ve (programatik uygulamalar için) dil tercihleri ekleyin. Dil tercihi, kullanıcının tarayıcısından veya mobil cihazından dil tercihlerini seçtiği için widget'larda gerekli değildir.
- Yer Adı Otomatik Tamamlama (Eski) özelliğine harita eşlik ediyorsa konumu harita görüntü alanına göre yönlendirebilirsiniz.
- Kullanıcının Yer Adı Otomatik Tamamlama (Eski) tahminlerinden birini seçmediği durumlarda (genellikle bu tahminlerden hiçbiri istenen sonuç adresi olmadığı için) daha alakalı sonuçlar elde etmek amacıyla orijinal kullanıcı girişini yeniden kullanabilirsiniz:
- Kullanıcının yalnızca adres bilgisi girmesini bekliyorsanız Geocoding API'sine yapılan bir çağrıda orijinal kullanıcı girişini yeniden kullanın.
- Kullanıcının belirli bir yerle ilgili sorguları ada veya adrese göre girmesini bekliyorsanız Yer Ayrıntıları (Eski) isteği kullanın. Sonuçların yalnızca belirli bir bölgede beklenmesi durumunda konum önyargısı kullanın.
- Kullanıcılar, bir bina içindeki belirli birimlerin veya dairelerin adresleri gibi alt tesis adreslerini girerken. Örneğin, "Stroupežnického 3191/17, Praha" Çek adresi, Yer Adı Otomatik Tamamlama (Eski) özelliğinde kısmi bir tahminle sonuçlanır.
- New York'ta "23-30 29th St, Queens" veya Hawaii'deki Kauai adasında "47-380 Kamehameha Hwy, Kaneohe" gibi yol segmenti ön ekleri içeren adresleri giren kullanıcılar.
Konum önyargısı
location parametresi ve radius parametresi ileterek sonuçları belirli bir alana göre yönlendirin. Bu, Yer Adı Otomatik Tamamlama (Eski) özelliğine, tanımlanan alan içindeki sonuçları göstermeyi tercih etmesi talimatını verir. Tanımlanan alanın dışındaki sonuçlar gösterilmeye devam edebilir. Sonuçları yalnızca belirtilen bir ülke içindeki yerleri gösterecek şekilde filtrelemek için includedRegionCodes parametresini kullanabilirsiniz.
Konum kısıtlama
locationRestriction parametresi ileterek sonuçları belirli bir alanla sınırlayın.
Ayrıca, location ve radius parametresiyle tanımlanan bölgeyle sonuçları kısıtlamak için strictbounds parametresini ekleyebilirsiniz. Bu, Yer Adı Otomatik Tamamlama (Eski) hizmetine yalnızca bu bölgedeki sonuçları döndürmesi talimatını verir.