Firebase Hosting emülatörüyle web uygulamanızın prototipini oluşturmaya ve test etmeye başlamadan önce, genel Firebase Local Emulator Suite iş akışını anladığınızdan ve Local Emulator Suite'i kurup yapılandırdığınızdan ve CLI komutlarını incelediğinizden emin olun.
Ayrıca Firebase Hosting'in özelliklerine ve uygulama iş akışına da aşina olmalısınız. Firebase Hosting'e girişle başlayın.
Firebase Hosting emülatörüyle ne yapabilirim?
Firebase Hosting emülatörü, Hosting hizmetlerinin yüksek kaliteli yerel emülasyonunu sağlayarak üretim Hosting'de bulunan işlevlerin çoğunu sağlar. Barındırma emülatörü şunları yapmanızı sağlar:
- Depolama veya erişim ücreti ödemeden statik sitelerinizin ve web uygulamalarınızın prototipini oluşturun
- Barındırma sitenize dağıtmadan önce HTTPS işlevlerinin prototipini oluşturun, test edin ve hata ayıklayın
- Siteleri ve web uygulamalarını kapsayıcıya alınmış, sürekli entegrasyon iş akışlarında test edin.
Firebase projesi seçin
Firebase Local Emulator Suite, tek bir Firebase projesine yönelik ürünleri taklit eder.
Kullanılacak projeyi seçmek için emülatörleri başlatmadan önce, CLI'de çalışma dizininizde firebase use
çalıştırın. Veya --project
bayrağını her emulator komutuna iletebilirsiniz.
Local Emulator Suite, gerçek Firebase projelerinin ve demo projelerinin emülasyonunu destekler.
Proje tipi | Özellikler | Emülatörlerle kullanın |
---|---|---|
Gerçek | Gerçek bir Firebase projesi, oluşturduğunuz ve yapılandırdığınız projedir (büyük olasılıkla Firebase konsolu aracılığıyla). Gerçek projelerde veritabanı örnekleri, depolama grupları, işlevler veya Firebase projesi için ayarladığınız diğer kaynaklar gibi canlı kaynaklar bulunur. | Gerçek Firebase projeleriyle çalışırken desteklenen ürünlerin herhangi biri veya tümü için emülatörler çalıştırabilirsiniz. Taklit etmediğiniz tüm ürünler için uygulamalarınız ve kodunuz canlı kaynakla (veritabanı örneği, depolama grubu, işlev vb.) etkileşime girecektir. |
Demo | Bir demo Firebase projesinde gerçek bir Firebase yapılandırması ve canlı kaynak yoktur. Bu projelere genellikle codelab'ler veya diğer eğitimler aracılığıyla erişilir. Demo projelerine ait proje kimlikleri | Demo Firebase projeleriyle çalışırken uygulamalarınız ve kodunuz yalnızca emülatörlerle etkileşime girer. Uygulamanız, öykünücünün çalışmadığı bir kaynakla etkileşim kurmaya çalışırsa bu kod başarısız olur. |
Mümkün olan her yerde demo projelerini kullanmanızı öneririz. Faydaları şunları içerir:
- Emülatörleri Firebase projesi oluşturmadan çalıştırabileceğiniz için daha kolay kurulum
- Kodunuzun yanlışlıkla öykünmemiş (üretim) kaynakları çağırması durumunda veri değişikliği, kullanım ve faturalandırma şansı olmayacağı için daha güçlü güvenlik
- SDK yapılandırmanızı indirmek için internete erişmenize gerek olmadığından daha iyi çevrimdışı destek.
Temel prototip oluşturma iş akışı
Hızlı yinelemeler yapıyorsanız veya uygulamanızın öykünülmüş arka uç proje kaynaklarıyla etkileşimde bulunmasını istiyorsanız Barındırma içeriğinizi test edebilir ve yerel olarak yapılandırabilirsiniz. Yerel olarak test yaparken Firebase, web uygulamanızı yerel olarak barındırılan bir URL'de sunar.
(İsteğe bağlı) Varsayılan olarak, yerel olarak barındırılan uygulamanız öykünülmüş değil, gerçek proje kaynaklarıyla (işlevler, veritabanı, kurallar vb.) etkileşime girer. Bunun yerine, isteğe bağlı olarak, yapılandırdığınız öykünülmüş proje kaynaklarını kullanmak için uygulamanızı bağlayabilirsiniz. Daha fazla bilgi edinin: Gerçek Zamanlı Veritabanı | Bulut Firestore | Bulut İşlevleri
Yerel proje dizininizin kökünden aşağıdaki komutu çalıştırın:
firebase emulators:start
Web uygulamanızı CLI tarafından döndürülen yerel URL'de açın (genellikle
http://localhost:5000
).Yerel URL'yi değişikliklerle güncellemek için tarayıcınızı yenileyin.
Diğer yerel cihazlardan test edin
Varsayılan olarak emülatörler yalnızca localhost
gelen isteklere yanıt verir. Bu, barındırılan içeriğinize bilgisayarınızın web tarayıcısından erişebileceğiniz ancak ağınızdaki diğer cihazlardan erişemeyeceğiniz anlamına gelir. Diğer yerel cihazlardan test etmek istiyorsanız firebase.json
dosyanızı şu şekilde yapılandırın:
"emulators": {
// ...
"hosting": {
"port": 5000
"host": "0.0.0.0"
}
}
Sürekli entegrasyon iş akışları için kimlik doğrulama belirteçleri oluşturun
Sürekli entegrasyon iş akışlarınız Firebase Hosting'e dayanıyorsa firebase emulators:exec
çalıştırmak için bir belirteç kullanarak oturum açmanız gerekecektir. Diğer emülatörler oturum açmayı gerektirmez.
Bir belirteç oluşturmak için yerel ortamınızda firebase login:ci
çalıştırın; bu bir CI sisteminden yapılmamalıdır. Kimlik doğrulamak için talimatları izleyin. Belirteç tüm derlemelerde geçerli olacağından bu adımı proje başına yalnızca bir kez uygulamanız gerekir. Belirteç bir parola gibi ele alınmalıdır; gizli tutulduğundan emin olun.
CI ortamınız, derleme komut dosyalarında kullanılabilecek ortam değişkenlerini belirtmenize izin veriyorsa, FIREBASE_TOKEN
adlı bir ortam değişkeni oluşturmanız yeterlidir; değer, erişim belirteci dizesidir. Firebase CLI, FIREBASE_TOKEN
ortam değişkenini otomatik olarak alacak ve emülatörler düzgün şekilde başlayacaktır.
Son çare olarak, belirteci derleme betiğinize dahil edebilirsiniz ancak güvenilmeyen tarafların erişime sahip olmadığından emin olun. Bu sabit kodlu yaklaşım için firebase emulators:exec
komutuna --token "YOUR_TOKEN_STRING_HERE"
ekleyebilirsiniz.
Sırada ne var?
- Firebase web codelab'ini izleyerek Barındırma öykünücüsünü kullanarak hızlı bir başlangıç yapın.
- İşlevler için barındırma kılavuzlarında açıklandığı gibi, Hosting öykünücüsünü kullanarak HTTPS işlevlerinin nasıl prototip oluşturulacağını anlayın.
- Özel olarak seçilmiş bir dizi video ve ayrıntılı nasıl yapılır örnekleri için Firebase Emulators Eğitim Oynatma Listesini takip edin.