Geocoding API'yi ayarlama

Avrupa Ekonomik Alanı'ndaki (AEA) geliştiriciler

Bu belgede, Geocoding API'yi kullanmaya başlamak için uygulamanız gereken adımlar açıklanmaktadır.

Google Haritalar Platformu ürünleri, yetkisiz kullanımı önlemek için API çağrılarının bir API anahtarı veya OAuth jetonu içermesini gerektirir. Dağıtım ortamınıza uygun kurulum prosedürünü seçebilirsiniz.

OAuth jetonu oluşturma

Geocoding API, kimlik doğrulama için OAuth 2.0'ı destekler. Google, web sunucusu senaryoları gibi yaygın OAuth 2.0 senaryolarını destekler.

Bu dokümanda, geliştirme ortamınızda bir Geocoding API çağrısına OAuth jetonunun nasıl iletileceği açıklanmaktadır. OAuth'u üretim ortamında kullanma hakkında daha fazla bilgi için Google'da kimlik doğrulama yöntemleri başlıklı makaleyi inceleyin.

Sunucuya API istekleri göndererek Google Maps API'leri doğrudan çağırabilir veya kodunuzu basitleştirmek için istemci kitaplıklarını kullanabilirsiniz. Google Haritalar; Go, Java, Node.js ve Python için istemci kitaplıkları sağlar. Daha fazla bilgi için Geocoding API istemci kitaplıkları başlıklı makaleyi inceleyin.

OAuth'a genel bakış

Dağıtım ortamınıza bağlı olarak OAuth ile erişim jetonlarını çeşitli şekillerde oluşturabilir ve yönetebilirsiniz.

Uygulamanız ile bir Google hizmeti arasındaki sunucudan sunucuya etkileşimler için OAuth 2.0'ı kullanabilirsiniz. Bu senaryoda, bireysel bir kullanıcı yerine uygulamanızla ilişkili bir hizmet hesabı kullanırsınız. Kullanıcıları doğrudan dahil etmeden hizmet hesabını kullanarak API istekleri gönderebilirsiniz. Kimlik doğrulama yöntemleri hakkında daha fazla bilgi için Google'da kimlik doğrulama yöntemleri başlıklı makaleyi inceleyin.

Alternatif olarak, Geocoding API'yi bir Android veya iOS mobil uygulamasına entegre edebilirsiniz. Farklı dağıtım ortamları için OAuth kullanımı ve erişim jetonlarını yönetme hakkında daha fazla bilgi edinmek isterseniz Google API'lerine erişmek için OAuth 2.0'ı kullanma başlıklı makaleyi inceleyin.

OAuth kapsamları

Geocoding API ile OAuth kullanmak için OAuth jetonuna doğru kapsamı atamanız gerekir. Geocoding API aşağıdaki kapsamları destekler:

  • https://www.googleapis.com/auth/maps-platform.geocode: Tüm Geocoding API yöntemleriyle kullanılır.
  • https://www.googleapis.com/auth/maps-platform.destinations: Varış yeri ve varış sorguları için yalnızca SearchDestinations ile kullanın.
  • https://www.googleapis.com/auth/maps-platform.geocode.address: İleriye doğru coğrafi kodlama için yalnızca GeocodeAddress ile kullanın.
  • https://www.googleapis.com/auth/maps-platform.geocode.location: Yalnızca tersine coğrafi kodlama için GeocodeLocation ile birlikte kullanılır.
  • https://www.googleapis.com/auth/maps-platform.geocode.place: Yalnızca yer coğrafi kodlaması için GeocodePlace ile kullanın.

Tüm Geocoding API yöntemleri için genel https://www.googleapis.com/auth/cloud-platform kapsamını da kullanabilirsiniz. Bu kapsam, gcloud CLI ile jeton oluştururken varsayılan kapsam olduğundan geliştirme sırasında kullanışlıdır.

Örnek: Yerel geliştirme ortamınızda REST API çağrılarını deneme

Jeton oluşturan bir ortamınız yoksa ve Geocoding API'yi OAuth jetonuyla denemek istiyorsanız bu bölümdeki prosedürü uygulayın.

Bu örnekte, çağrıyı yapmak için Uygulama Varsayılan Kimlik Bilgileri (ADC) tarafından sağlanan OAuth jetonunun nasıl kullanılacağı açıklanmaktadır. İstemci kitaplıklarıyla Google API'lerini çağırmak için ADC'yi kullanma hakkında daha fazla bilgi edinmek istiyorsanız İstemci kitaplıklarını kullanarak kimlik doğrulama başlıklı makaleyi inceleyin.

Aşağıdaki REST prosedürünü yalnızca geliştirme veya test için kullanın, üretim için kullanmayın.

Ön koşullar

ADC kullanarak REST isteği göndermeden önce ADC'ye kimlik bilgileri sağlamak için gcloud CLI'yı kullanın:

  1. gcloud KSA'yı yükleyip ilk kullanıma hazırlayın. Daha fazla bilgi için gcloud CLI'yi yükleme başlıklı makaleyi inceleyin.

  2. gcloud CLI ile kimlik doğrulama:

    gcloud auth application-default login
  3. Kimlik bilgilerinizi ADC tarafından kullanılan yerel kimlik bilgisi dosyasına kaydetmek için oturum açma işlemini tamamlayın.

Daha fazla bilgi için Yerel geliştirme ortamı için ADC'yi ayarlama başlıklı makaleyi inceleyin.

REST isteği gönderme

Bu örnekte iki istek başlığı iletilir:

  • Jetonu oluşturmak için aşağıdaki komutu kullanarak OAuth jetonunu Authorization başlığında iletin:

    gcloud auth application-default print-access-token

    Döndürülen jetonun kapsamı https://www.googleapis.com/auth/cloud-platform.

  • X-Goog-User-Project başlığında, faturalandırmanın etkin olduğu Google Cloud projenizin kimliğini veya adını iletin.

OAuth jetonu kullanarak Geocoding API'yi çağırmak için aşağıdaki adımları uygulayın:

  1. Aşağıdaki kod örneğinde PROJECT_ID yerine Google Cloud proje kimliğinizi yazın:

    curl -X GET -H 'Content-Type: application/json' \
    -H "Authorization: Bearer $(gcloud auth application-default print-access-token)" \
    -H "X-Goog-User-Project: PROJECT_ID" \
    "https://geocode.googleapis.com/v4/geocode/address/1600+Amphitheatre+Parkway,+Mountain+View,+CA"
    
  2. curl komutunu kopyalamak için kod örneğinde Kopyala'yı tıklayın.

  3. Komutu bir terminal penceresine yapıştırıp çalıştırın.

Sorun giderme

İsteğiniz, bu API'nin son kullanıcı kimlik bilgilerini desteklemediğini belirten bir hata mesajı döndürürse ADC kurulumunuzla ilgili sorunları giderme başlıklı makaleyi inceleyin.