Places API (Yeni), kimlik doğrulama için OAuth 2.0 kullanımını destekler. Google, web sunucusu senaryoları gibi yaygın OAuth 2.0 senaryolarını destekler.
Bu belgede, geliştirme ortamınızdaki Places API (Yeni) çağrısına bir OAuth jetonunun nasıl iletileceği açıklanmaktadır. Üretim ortamında OAuth kullanma talimatları için Google'da Kimlik Doğrulama başlıklı makaleyi inceleyin.
Başlamadan önce
Places API'yi (Yeni) kullanmaya başlamadan önce faturalandırma hesabı olan ve Places API'nin (Yeni) etkinleştirildiği bir projeye ihtiyacınız vardır. Birden fazla Proje Sahibi ve Faturalandırma Yöneticisi oluşturmanızı öneririz. Böylece ekibinizde bu rollere sahip birilerinin olur. Daha fazla bilgi edinmek için Cloud Console'da ayarlama bölümüne bakın.
OAuth hakkında
Dağıtım ortamınıza bağlı olarak OAuth ile erişim jetonları oluşturmanın ve yönetmenin birçok yolu vardır.
Örneğin, Google OAuth 2.0 sistemi, uygulamanız ile bir Google hizmeti arasındaki etkileşimler gibi sunucular arası etkileşimleri destekler. Bu senaryo için bir hizmet hesabına ihtiyacınız vardır. Hizmet hesabı, bireysel son kullanıcı yerine uygulamanıza ait bir hesaptır. Uygulamanız, hizmet hesabı adına Google API'lerini çağırır, böylece kullanıcılar sürece doğrudan dahil olmaz. Kimlik doğrulama yöntemleri hakkında daha fazla bilgi edinmek için Google'da Kimlik Doğrulama sayfasına göz atın.
Alternatif olarak Places API'yi (Yeni) bir Android veya iOS mobil uygulamasının parçası olarak kullanabilirsiniz. Farklı dağıtım ortamlarına yönelik erişim jetonlarını yönetmeyle ilgili bilgiler de dahil olmak üzere OAuth'u Places API (Yeni) ile kullanma hakkında genel bilgiler için Google API'lerine Erişmek için OAuth 2.0'ı Kullanma bölümüne bakın.
OAuth kapsamları hakkında
OAuth'u Places API (Yeni) ile kullanmak için OAuth jetonuna kapsam atanmalıdır:
https://www.googleapis.com/auth/cloud-platform
Örnek: Yerel geliştirme ortamınızda REST API çağrılarını deneme
Bir OAuth jetonu kullanarak Places API'yi (Yeni) denemek istiyorsanız ancak jeton oluşturmak için bir ortam ayarınız yoksa çağrıyı yapmak için bu bölümdeki prosedürü kullanabilirsiniz.
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ını kullanarak Google API'lerini çağırmak için ADC'yi kullanma hakkında daha fazla bilgi için İstemci kitaplıklarını kullanarak kimlik doğrulama bölümüne bakın.
Ön koşullar
ADC kullanarak REST isteğinde bulunmadan önce kimlik bilgilerini ADC'ye sağlamak için Google Cloud CLI'yi kullanın:
- Henüz yapmadıysanız Google Cloud Console'da Kurulum bölümündeki adımları uygulayarak bir proje oluşturun ve faturalandırmayı etkinleştirin.
- gcloud KSA'yı yükleyin ve başlatın.
Kimlik bilgisi dosyanızı oluşturmak için yerel makinenizde şu
gcloud
komutunu çalıştırın:gcloud auth application-default login
- Bir giriş ekranı gösterilir. Giriş yaptıktan sonra kimlik bilgileriniz ADC tarafından kullanılan yerel kimlik bilgisi dosyasında saklanır.
Daha fazla bilgi için Uygulama Varsayılan Kimlik Bilgileri için kimlik bilgilerini sağlama belgelerinin Yerel geliştirme ortamı bölümüne bakın.
REST isteğinde bulunma
Bu örnekte, iki istek başlığı iletirsiniz:
Jetonu oluşturmak için aşağıdaki komutu kullanarak
Authorization
üstbilgisine OAuth jetonunu iletin:gcloud auth application-default print-access-token
Döndürülen jetonun kapsamı
https://www.googleapis.com/auth/cloud-platform.
şeklindedirX-Goog-User-Project
başlığında, faturalandırmanın etkin olduğu Google Cloud projenizin kimliğini veya adını iletin. Daha fazla bilgi için Cloud Console'da ayarlama bölümüne bakın.
Aşağıdaki örnekte OAuth jetonu kullanılarak Places API'ye (Yeni) çağrı yapılmaktadır:
curl -X POST -d '{ "textQuery" : "Spicy Vegetarian Food in Sydney, Australia" }' \ -H "Content-Type: application/json" \ -H "Authorization: Bearer $(gcloud auth application-default print-access-token)" \ -H "X-Goog-User-Project: PROJECT_ID" \ -H "X-Goog-FieldMask: places.displayName,places.formattedAddress" \ "https://places.googleapis.com/v1/places:searchText"
Sorun giderme
İsteğiniz, bu API tarafından desteklenmeyen son kullanıcı kimlik bilgileri hakkında bir hata mesajı döndürürse Kullanıcı kimlik bilgileri çalışmıyor bölümüne göz atın.