2012-07-04 24 views
16

Google Haritalar API'sı ile bir başvuru yapıyorum. Bir bilgisayarda bir insan sahibi olmak, başka bir kişinin haritaya düzenlediklerini izlemek istiyorum. Haritanın bilgilerini Google Fusion Tablosuna aktarmayı düşünüyorum. Diğer kişi her şeyi bir katman olarak görebilir. Programın sadece kullanıcının tarayıcısından çalıştırılmasını ve bunun için bir web sitesi oluşturmamasını isterim.Google API ve oauth 2.0 için doğru yönlendirme URI'si

Füzyon tablolarını düzenlemek için, erişim/jeton almam gerekir. Şunu gerçekleştirmek için şu anda javascript betiğini kullanmaya çalışıyorum. ScriptSample.html, oauthWindow.html ve gwt-oauth2.js. Bu working example.

Onları çalıştırdığımda, redirect_URI yanlış olduğunu söyleyen bir hata alıyorum. Yönlendirmek için kullandığım dosyanın yetkisi olmadığını söylüyor. İlk açık sorduğum soru şudur: Bu dosya otoritesini yeniden yönlendirmeye nasıl verebilirim?

API konsolumda, istemci tarafında bir web uygulaması olarak ayarlamam gerekir. Yüklü bir uygulamaya değiştirmeli miyim?

anda, benim javascript kökeni: https: // localhost

yönlendirme URI: https: //localhost/oauthWindow.html

bir localhost url için kullanılması sorun yok

Teşekkür

+2

localhost tabanlı bir geri bildirim URI'si kullanıyor musunuz? Bu, OAuth sunucusunun yanıtı kendisine göndermesi gerektiği anlamına gelir, yani anlamsızdır. Harici ağdan erişilebilen bazı URL'leri kesinlikle kullanmalısınız. –

+2

Üzgünüm, yanılmışım, kendimi düzeltmeliyim. Geri arama URI'leri sadece tarayıcınızı yetkilendirme sonucuyla yönlendirmek için kullanılır, bu nedenle yerel bir sunucu tabanlı geri bildirim URI kuramında çalışabilir. Öte yandan, tüm geri çağrı URI kontrol yöntemini anlamsız yapan ciddi güvenlik sorunları vardır. Sonuç olarak, yine de dışarıdan erişilebilir bir geri bildirim sağlamalısınız. –

+0

Bununla ilgili sorunum var. Bazı süper garip bir nedenden dolayı, google, 'https: // bir şey' olan yönlendirme URL'sinin http: // bir şey '' e dönüştürülmesine karar verdi. Bu korkunç çünkü sunucumun ssl/https için bir zorunluluk, istisna yok. – Automatico

cevap

12

Dev çalışma - üretim söz konusu olduğunda açıkça değişmesi gerekiyor. - Temel Adımlar bölümünde bağlantının https://developers.google.com/accounts/docs/OAuth2 ve sonra API Konsolu için bağlantıyı takip edin:

Burada gitmek gerekir. Yeni başvuru formunu doldurduğunuzda bir yönlendirme URL'si sağlamanız istenir. Erişim izni verildiği sayfaya gitmek istediğiniz sayfaya girin.

Google oAuth URL'sini oluştururken - yönlendirme URL'sini eklemeniz gerekir - tam bir eşleşme olmalı veya sorunlarınız olacaktır. Ayrıca UrlEncoded olması gerekiyor.

+0

Yerel olarak barındırılan bir sayfada yeniden yönlendirmek isterseniz, - localhost: 9090/index.html bu tam URL'yi veriyor muyum? – moaglee

+1

@mystikacid evet. 'Http: //' (protokol) kısmını da eklemelisiniz. – PSWai