Not
Bu sayfaya erişim yetkilendirme gerektiriyor. Oturum açmayı veya dizinleri değiştirmeyi deneyebilirsiniz.
Bu sayfaya erişim yetkilendirme gerektiriyor. Dizinleri değiştirmeyi deneyebilirsiniz.
Arama hizmeti, geliştiricilerin ad, kategori ve diğer coğrafi bilgilere göre adresleri, yerleri ve iş listelerini aramasına yardımcı olmak için tasarlanmış bir DIZI RESTful API'dir. Hizmetler, geleneksel coğrafi kodlamayı desteklemenin yanı sıra, enlemlere ve boylamlara göre adresleri ve sokakları ters kodlayabilir. Arama tarafından döndürülen enlem ve boylam değerleri Rota ve Hava Durumu gibi diğer Azure Haritalar hizmetlerinde parametre olarak kullanılabilir.
Bu makalede şunların nasıl yapılacağını gösterilmektedir:
- Arama Adresi kullanarak bir adres (coğrafi kod adresi konumu) için enlem ve boylam koordinatları isteyin.
- Benzer Arama'yı kullanarak bir adres veya İlgi Noktası (POI) arayın.
- Ters Adres Arama kullanarak koordinat konumunu sokak adresine çevirin.
- Koordinat konumunu daha anlaşılır bir çapraz caddeye çevirmek için, bir cihazdan veya varlıktan GPS akışı alan ve koordinatın nerede olduğunu bilmek isteyen takip uygulamaları tarafından en sık kullanılan Adres Ters Çapraz Cadde Arama işlevini kullanın.
Önkoşullar
Önemli
Bu makaledeki URL örneklerinde Azure Haritalar abonelik anahtarınızla değiştirmeniz {Your-Azure-Maps-Subscription-key}
gerekir.
Bu makalede Bruno uygulaması kullanılır, ancak farklı bir API geliştirme ortamı seçebilirsiniz.
Adres için enlem ve boylam isteme (coğrafi kodlama)
Bu bölümdeki örnek, bir adresi enlem ve boylam koordinatlarına dönüştürmek için Arama Adresi Al işlevini kullanır. Bu işleme coğrafi kodlama da denir. Yanıt, koordinatları döndürmenin yanı sıra sokak, posta kodu, belediye ve ülke/bölge bilgileri gibi ayrıntılı adres özelliklerini de döndürür.
İpucu
Coğrafi kodlamaya yönelik bir adres kümeniz varsa, Tek bir istekte bir grup sorgu göndermek için Arama Adresi Toplu İşlemini Gönder'i kullanabilirsiniz.
bruno uygulamasını açın, isteği oluşturmak için YENİ İstek'i seçin. YENİ İstek penceresinde Tür'i HTTP olarak ayarlayın. İstek için bir İsim girin.
URL açılan listesinde GET HTTP yöntemini seçin ve aşağıdaki URL'yi girin:
https://atlas.microsoft.com/search/address/json?&subscription-key={Your-Azure-Maps-Subscription-key}&api-version=1.0&language=en-US&query=400 Broad St, Seattle, WA 98109
Oluştur düğmesini seçin.
Çalıştır düğmesini seçin.
Bu istek belirli bir adresi arar:
400 Broad St, Seattle, WA 98109
. Ardından, birden fazla olası konumu olan bir adreste arama yapın.Parametreler bölümünde
query
anahtarını400 Broad, Seattle
olarak değiştirin ve çalıştır düğmesini seçin.Önce
query
anahtarını400 Broa
olarak ayarlamayı deneyin, ardından çalıştır düğmesini seçin.Yanıt, birden çok ülkenin/bölgenin sonuçlarını içerir. Kullanıcılarınızın ilgili alanına geobias sonuçları eklemek için her zaman isteğe mümkün olduğunca çok konum ayrıntısı ekleyin.
Bulanık Arama
Benzer Arama , standart tek satırlı ve serbest biçimli aramaları destekler. Arama isteği için kullanıcı giriş türünüzü bilmediğinizde Azure Haritalar Arama Belirsiz API'sini kullanmanızı öneririz. Sorgu girişi tam veya kısmi bir adres olabilir. PoI adı, POI kategorisi veya marka adı gibi bir İlgi Noktası (POI) belirteci de olabilir. Ayrıca, arama sonuçlarınızın ilgi düzeyini artırmak için, koordinat konumu ve yarıçapı kullanarak veya sınırlayıcı bir kutu tanımlayarak sorgu sonuçlarını kısıtlar.
İpucu
Çoğu Arama sorgusu, performansı geliştirmek ve olağan dışı sonuçları azaltmak için maxFuzzyLevel=1
varsayılan olarak ayarlanır.
maxFuzzyLevel
veya minFuzzyLevel
parametrelerini kullanarak bulanıklık düzeylerini ayarlayın.
maxFuzzyLevel
hakkında daha fazla bilgi edinmek ve tüm isteğe bağlı parametrelerin tam listesi için bkz Belirsiz Arama URI Parametreleri.
Bulanık Arama kullanarak adres arama
Bu bölümdeki örnek, dünya çapında Fuzzy Search
kullanarak pizza aramayı ve ardından belirli bir ülke/bölge kapsamı içinde arama yapmayı gösterir. Son olarak, bir aramanın kapsamını belirli bir alan üzerinde sınırlandırmak ve döndürülen sonuç sayısını sınırlamak için koordinat konumunun ve yarıçapının nasıl kullanılacağını gösterir.
Önemli
Kullanıcılarınızın ilgili alanına geobias sonuçları eklemek için her zaman mümkün olduğunca çok konum ayrıntısı ekleyin. Daha fazla bilgi için bkz . Arama için En İyi Yöntemler.
bruno uygulamasını açın, isteği oluşturmak için YENİ İstek'i seçin. YENİ İstek penceresinde Tür'i HTTP olarak ayarlayın. İstek için bir Ad girin.
URL açılan listesinde GET HTTP yöntemini seçin ve aşağıdaki URL'yi girin:
https://atlas.microsoft.com/search/fuzzy/json?api-version=1.0&subscription-key={Your-Azure-Maps-Subscription-key}&language=en-US&query=pizza
Çalıştır düğmesini seçin ve yanıt gövdesini gözden geçirin.
"Pizza" için belirsiz sorgu dizesi 10 ilgi çekici nokta (POI) döndürdü ve hem "pizza" hem de "restoran" kategorilerini içeriyor. Her sonuç sokak adresi, enlem ve boylam değerleri, görünüm bağlantı noktası ve konum için giriş noktaları gibi ayrıntıları içerir. Sonuçlar artık bu sorgu için çeşitlidir ve herhangi bir başvuru konumuna bağlı değildir.
Sonraki adımda parametresini
countrySet
kullanarak yalnızca uygulamanızın kapsama ihtiyacı olan ülkeleri/bölgeleri belirteceksiniz. Desteklenen ülkelerin/bölgelerin tam listesi için bkz. Azure Haritalar coğrafi kodlama kapsamı.Varsayılan davranış, gereksiz sonuçlar döndüren tüm dünyada arama yapmaktır. Ardından, yalnızca Birleşik Devletler pizza arayın.
countrySet
Anahtarı Params bölümüne ekleyin ve değerini olarakUS
ayarlayın. anahtarıcountrySet
olarakUS
ayarlamak sonuçları Birleşik Devletler ile sınırlar.Sonuçlar artık ülke koduyla sınırlanır ve sorgu Birleşik Devletler pizza restoranlarını döndürür.
Daha da fazla hedeflenen arama elde etmek için lat/lon koordinat çiftinin kapsamı üzerinde arama yapabilirsiniz. Aşağıdaki örnek Seattle Space Needle'ın lat/lon koordinatlarını kullanır. Sonuçları yalnızca 400 metre yarıçapı içinde döndürmek istediğimizden parametresini
radius
ekleriz. Ayrıca, sonuçları en yakın beş pizza yeriyle sınırlamak için parametresini ekleyeceğizlimit
.Parametreler bölümünde aşağıdaki anahtar/değer çiftlerini ekleyin:
Anahtar Değer Lat 47.620525 Lon -122.349274 yarıçap 400 sınır 5 Çalıştır’ı seçin. Yanıt, Seattle Space Needle yakınındaki pizza restoranlarının sonuçlarını içerir.
Ters Adres Arama kullanarak sokak adresi arama
Get Search Address Reverse , koordinatları okunabilir sokak adreslerine çevirir. Bu API genellikle GPS akışlarını kullanan ve belirli koordinat noktalarında adresleri bulmak isteyen uygulamalar için kullanılır.
Önemli
Kullanıcılarınızın ilgili alanına geobias sonuçları eklemek için her zaman mümkün olduğunca çok konum ayrıntısı ekleyin. Daha fazla bilgi için bkz . Arama için En İyi Yöntemler.
İpucu
Koordinat konumlarını ters coğrafi kodlamak için bir dizi koordinat konumunuz varsa, bir grup sorguyu tek bir istekte göndermek amacıyla Post Search Address Reverse Batch işlemini kullanabilirsiniz.
Bu örnek, kullanılabilen isteğe bağlı parametrelerden birkaçını kullanarak ters aramalar yapmayı gösterir. İsteğe bağlı parametrelerin tam listesi için bkz . Ters Arama Parametreleri.
bruno uygulamasını açın, isteği oluşturmak için YENİ İstek'i seçin. YENİ İstek penceresinde Tür'i HTTP olarak ayarlayın. İstek için bir İsim girin.
URL açılan listesinde GET HTTP yöntemini seçin ve aşağıdaki URL'yi girin:
https://atlas.microsoft.com/search/address/reverse/json?api-version=1.0&subscription-key={Your-Azure-Maps-Subscription-key}&language=en-US&query=47.591180,-122.332700
Çalıştır düğmesini seçin ve yanıt gövdesini gözden geçirin. Bir sorgu sonucu görmeniz gerekir. Yanıt, Safeco Alanı ile ilgili anahtar adres bilgilerini içerir.
Ardından, Params bölümüne aşağıdaki anahtar/değer çiftlerini ekleyin:
Anahtar Değer İadeler Numara 1 Yanıt, sokağın kenarını (Sol/Sağ) ve ayrıca sayı için bir sapma konumunu içerebilir. Dönüş Hız Limiti doğru Adreste hız sınırını verir. returnRoadUse true Adreste yol kullanım türlerini döndürür. Tüm olası yol kullanım türleri için bkz . Yol Kullanım Türleri. returnMatchType doğru Eşleşme türünü döndürür. Tüm olası değerler için bkz Ters Adres Arama Sonuçları. Çalıştır düğmesini seçin ve yanıt gövdesini gözden geçirin.
Ardından anahtarı ekleyin
entityType
ve değerini olarakMunicipality
ayarlayın. Anahtar,entityType
önceki adımda anahtarı geçersiz kılarreturnMatchType
.returnSpeedLimit
vereturnRoadUse
ayrıca belediye hakkında bilgi talep ettiğiniz için kaldırılması gerekiyor. Tüm olası varlık türleri için bkz . Varlık Türleri.Çalıştır düğmesini seçin. Sonuçları 5. adımda döndürülen sonuçlarla karşılaştırın. İstenen varlık türü artık
municipality
olduğundan, yanıtta sokak adresi bilgileri yoktur. Ayrıca, döndürülengeometryId
Azure Haritalar Get Search Çokgen API'sini kullanarak sınır çokgeni istemek için kullanılabilir.
İpucu
Bunlar ve diğer parametreler hakkında daha fazla bilgi için bkz . Ters Arama Parametreleri.
Ters Adres Çapraz Cadde Arama'yı kullanarak çapraz caddeyi arayın
Bu örnekte, bir adresin koordinatlarına göre bir çapraz caddenin nasıl arandığı gösterilmektedir.
bruno uygulamasını açın, isteği oluşturmak için YENİ İstek'i seçin. YENİ İstek penceresinde Tür'i HTTP olarak ayarlayın. İstek için bir Ad girin.
URL açılan listesinde GET HTTP yöntemini seçin ve aşağıdaki URL'yi girin:
https://atlas.microsoft.com/search/address/reverse/crossstreet/json?api-version=1.0&subscription-key={Your-Azure-Maps-Subscription-key}&language=en-US&query=47.591180,-122.332700
Çalıştır düğmesini seçin ve yanıt gövdesini gözden geçirin. Yanıtın
crossStreet
değeriniSouth Atlantic Street
içerdiğine dikkat edin.