Bu belgede, Navigation Connect'i kullanmaya başlamak için yapmanız gerekenler açıklanmaktadır.
|
Ön koşulları karşıladığınızdan emin olun. |
Google Cloud projenizde API'yi etkinleştirin. |
Kimliği doğrulanmış bir API isteği göndermek için OAuth'u yapılandırın. |
Google Haritalar Platformu ürünleri, yetkisiz kullanımı önlemek için API çağrılarının bir OAuth jetonu içermesini gerektirir.
OAuth jetonu oluşturma
Navigation Connect, kimlik doğrulama için OAuth 2.0'ı destekler. Google, web sunucusu senaryoları gibi yaygın OAuth 2.0 senaryolarını destekler.
Bu belgede, geliştirme ortamınızda bir OAuth jetonunu Navigation Connect çağrısına nasıl ileteceğiniz açıklanmaktadır. Üretim ortamında OAuth 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 Haritalar API'lerini 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 Navigation Connect 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şturup 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'daki kimlik doğrulama yöntemleri başlıklı makaleyi inceleyin.
Alternatif olarak, Navigation Connect'i bir Android veya iOS mobil uygulamasına entegre edebilirsiniz. Farklı dağıtım ortamları için OAuth'u kullanma ve erişim jetonlarını yönetme hakkında daha fazla bilgi edinmek için Google API'lerine Erişmek İçin OAuth 2.0'ı Kullanma başlıklı makaleyi inceleyin.
OAuth kapsamları
OAuth'u Navigation Connect ile kullanmak için OAuth jetonuna aşağıdaki kapsamı atamanız gerekir:
https://www.googleapis.com/auth/cloud-platform
Örnek: Yerel geliştirme ortamınızda REST API çağrılarını deneyin
Jeton oluşturan bir ortamınız yoksa ve Navigation Connect'i OAuth jetonuyla denemek istiyorsanız bu bölümdeki prosedürü kullanın.
Bu örnekte, çağrı 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 için İ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 bir REST isteğinde bulunmadan önce gcloud CLI'yı kullanarak ADC'ye kimlik bilgileri sağlayın:
gcloudKSA'yı yükleyip ilk kullanıma hazırlayın. Daha fazla bilgi için gcloud CLI'yı yükleme başlıklı makaleyi inceleyin.gcloudCLI ile kimlik doğrulayın:gcloud auth application-default login
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ğinde bulunma
Bu örnekte iki istek başlığı iletiyorsunuz:
Jetonu oluşturmak için aşağıdaki komutu kullanarak OAuth jetonunu
Authorizationüstbilgisinde iletin:gcloud auth application-default print-access-tokenDöndürülen jetonun kapsamı
https://www.googleapis.com/auth/cloud-platform.Faturalandırmanın etkinleştirildiği Google Cloud projenizin kimliğini veya adını
X-Goog-User-Projectüstbilgisinde iletin.
OAuth jetonu kullanarak Navigation Connect'i çağırmak için aşağıdaki adımları tamamlayın:
Aşağıdaki kod örneğinde yer tutucuları kendi değerlerinizle değiştirin:
- PROJECT_ID: Google Cloud proje kimliğiniz
- ANDROID_APP_ID: Uygulanabilirse uygulamanızın Android paket adı
- IOS_APP_ID: Uygulamanızın iOS paket kimliği (varsa)
#!/bin/bash trip_id="$(uuidgen)" access_token="$(gcloud auth application-default print-access-token)" curl -X POST "https://navigationconnect.googleapis.com/v1/projects/PROJECT_ID/trips?tripId=${trip_id}" \ -H "Authorization: Bearer ${access_token}" \ -H "Content-Type: application/json" \ -d '{ "androidAppId": "ANDROID_APP_ID", "iosAppId": "IOS_APP_ID", }'
curlkomutunu kopyalamak için kod örneğinde Kopyala'yı tıklayın.Komutu bir terminal penceresine yapıştırıp uygulayın.
Yanıt bir JSON nesnesi olur:
{ "name": "projects/PROJECT_NUMBER/trips/TRIP_ID", "authToken": { "token": "BASE64_ENCODED_TRIP_TOKEN", "expireTime": "2026-03-06T11:09:47.476942Z" }, "state": "NEW", "execution": { "traveledDistanceMeters": 0, "stopAddedInRoute": false }, "createTime": "2026-03-05T23:09:50.768959Z", "updateTime": "2026-03-05T23:09:50.768959Z", }
Bu yanıtta aşağıdaki değerler yer alır:
- PROJECT_NUMBER: Projenin benzersiz uzun tamsayı tanımlayıcısı
- TRIP_ID: Arka uç sisteminizin oluşturduğu UUIDv4 gezi kimliği
- BASE64_ENCODED_TRIP_TOKEN:
createTripyönteminin, Google Haritalar veya Waze'de adım adım takip edilen navigasyonu başlatmak için döndürdüğü kimliği doğrulanmış jeton
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.
Sırada ne var?
Ardından, arka uç altyapınız, Google Haritalar ve Waze arasında güvenli, sunucudan sunucuya iletişimi desteklemek için Navigation Connect API'ye yönelik hizmet hesaplarınızı yapılandırın.