Google Drive ile entegre edilecek ve yüklenecek bir web uygulaması oluşturmaya çalışıyorum. Kullanıcı, uygulamamın dosyalarını sürücülerinde oluşturabilir ve paylaşabilir. Firebase'i kullanarak yazmaya çalışıyorum, böylece buradaki yeni özelliklerin çoğunu kaldırabilirim. Ancak, bu iki platformda tutarlı bir şekilde çalışmak için auth alma konusunda sorun yaşıyorum.Google AccessToken Firebase'de Nasıl Yeniliyor? #AskFirebase
Bu, yalnızca istemci tarafındaki bir uygulama (en azından şimdilik), bu nedenle çevrimdışı kimlik doğrulama ve yenileme belirteçlerini kullanamıyorum.
Firebase auth'dan önce Google Identity Toolkit with gapi'u kullanırdım. Bu genellikle iyi çalışır, ancak mobil uyumlu olmayan bir açılır akış kullanır.
gapi.signin2.render(elementId, {
longtitle: true,
width: 230,
height: 50,
theme: "dark"
});
var auth2 = gapi.auth2.init({
client_id: CLIENT_ID,
scope: SCOPES.join(" ")
});
auth2.isSignedIn.listen(signinChanged);
auth2.currentUser.listen(userChanged);
Gapi biraz hantal, ama işe yarıyor. belirteç erişim zamanki gibi
gapi.auth2.getAuthInstance().currentUser.get().getAuthResponse(true));
arayarak elde edilebilir, erişim belirteci sadece sona ardından yaklaşık bir saat sürer ve. önemli, yenilenmiş erişim belirteci almak için GoogleUser.reloadAuthResponse() numaralı telefonu arayabilmemizdir. Not, bu bir yenilenmiş erişim belirteci, bir yenileme belirteci değil!
Teoride, bu erişim belirtecini Firebase ile described here olarak kimlik doğrulaması yapmak için kullanabilirim ve yalnızca popup akışıyla veya try to hack around that ile yaşamak zorundayım.
Tüm bunlara ek olarak, Google Identity Toolkit'in Firebase Authentication ile değiştirildiğini ve yeni uygulamaların Firebase'i kullanması gerektiğini söyledi.
Firebase Google ile kimlik denetimiyle basit bir API vardır. AccessToken'i kimlik doğrulamasıyla alabilir ve saklayabilirim. Öyle görünüyor ki, auth'u, yeni ve geliştirilmiş Firebase yöntemini uygulamamın yolu budur. Ayrıca Firebase, mobil cihazlarda çalışan güzel bir yönlendirme akışı sağlar.tarihinde Kimlik Toolkit en yeni sürümü Firebase doğrulaması gibi serbest bırakıldı. Şifrelenmiş parola akışları için yükseltilmiş istemci SDK'ları, açık kaynak kodlu UI kitaplıkları, oturum yönetimi ve entegre e-posta gönderme hizmeti 'u içerir.
Yeni projeler Firebase Kimlik Doğrulaması kullanmalıdır. Varolan projeyi Identity Toolkit'ten Firebase Authentication'a geçirmek için, taşıma kılavuzuna bakın .
Ancak, çok büyük bir sorun ...
Bu Erişim Token alacak yoktur.
firebase.auth().getRedirectResult().then(function(result) {
if (result.credential) {
// This gives you a Google Access Token. You can use it to access the Google API.
var token = result.credential.accessToken;
// ...
}
// The signed-in user info.
var user = result.user;
})
erişim belirteci mevcuttur ve bir saat için ... okuma/sürücü yazmaya kullanabilirsiniz. Bu jetonun süresi dolduğunda artık bir şey yapamam. Kullanıcı hala Firebase'de oturum açmış, bu yüzden Firebase hizmetlerini kullanmaya devam edebilirim, ancak sürücüye erişmek için tekrar oturum açmaya zorlamak zorundayım. Bu yapmaz!
Firebase'de GoogleUser.reloadAuthResponse() eşdeğerini arıyorum.
- Bunu nasıl yapabilirim?
- Firebase hizmet ve G Suite hem erişen bir web uygulaması oluşturmak için önerilen yolu nedir? herhangi bir resmi örnekler
- var mı?
Firebase auth ile Google bulut uç noktaları için yönergeleri izleyin (https://groups.google.com/forum/#!msg/firebase-talk/wAcJFfQlFeg/IUuJXNcgDHgJ), bir biraz eski ama yenileme belirtecini nasıl alacağına dair bazı adımları tartıştı. Ayrıca ilgili [forumu] (https://groups.google.com/forum/#!topic/firebase-talk/ZPW3xtwn8g0) Karşılaştığınız sorunla anlatıyor. Bununla ilgili herhangi bir güncelleme olup olmadığından emin değilim, ancak söz konusu çözümü forumda uygulayabileceğinizi düşünüyorum. Bu yardımcı olur umarım. –
Yanıt ve bağlantılar için teşekkürler. Bunlar biraz tarihli, özellikle de Google'ın Firebase'i satın almadan önce düşündüğüm ilk. Google auth'larını kullanmama ve sunucuda sıfırdan bir token ile sıfırdan kendi başıma uygulama konusundaki belirsiz bir yorumdan başka, geçerli bir geçici çözüm görmedim. Google API'leri genişletilmiş kimlik doğrulama desteklemiyorsa, Google kamuya tek saat ötesinde, yerine Kimlik Toolkit Firebase Google Auth kullanarak öneriyoruz neden :( Anlamıyorum. Ben Google'dan birisi cevap ve bazı vereceğini umuyoruz kesin rehberliği. – Gary