aggiornamento (10 marzo 2017): mentre l'architettura descrivo qui di seguito è ancora valido e può essere utilizzato per combinare Firebase con qualsiasi infrastruttura esistente, Firebase appena rilasciato Cloud Functions for Firebase, che consente di eseguire le funzioni JavaScript su Google server in risposta agli eventi Firebase (come le modifiche al database, gli utenti che accedono e molto altro).
Le architetture comuni di applicazioni Firebase sono abbastanza ben definito in questo post del blog Where does Firebase fit in your app?.
L'architettura proposta è la più vicina all'architettura 3, in cui il codice lato client parla direttamente a Firebase e direttamente al server node.js.
Inoltre, consiglio vivamente di prendere in considerazione l'opzione 2, in cui tutte le interazioni tra client e server vengono eseguite tramite Firebase. Un ottimo esempio di questo tipo di architettura è lo Flashlight search integration. I clienti scrivono le loro query di ricerca nel database Firebase. Il server ascolta tali richieste, esegue la query e scrive la risposta sul database. Il client attende questa risposta.
Un semplice schema per questo server potrebbe essere:
var ref = new Firebase('https://yours.firebaseio.com/searches');
ref.child('requests').on('child_added', function(requestSnapshot) {
// TODO: execute your operation for the request
var responseRef = ref.child('responses').child(requestSnapshot.key());
responseRef.set(result, function(error) {
if (!error) {
// remove the request, since we've handled it
requestSnapshot.ref().remove();
}
});
})
Con questo ultimo approccio al cliente parla mai direttamente al server, che rimuove tutti i tipi di potenziali problemi che si devono preoccupare. Per questo motivo a volte mi riferisco a loro come "bot", invece di server.
fonte
2016-02-12 14:42:39
Ottima domanda! Come probabilmente già visto, Firebase non ha ancora un equivalente diretto per il Codice Cloud (ancora). Ho descritto/collegato alcuni approcci di seguito. Basta commentare se qualcosa non è chiaro! –
[Hai mai visto questo video di Rob Dodson che spiega come usare Firebase with Polymer] (https://youtu.be/1f_Tj_JnStA?t=12m52s)? Penso che sia una combinazione molto potente. https://youtu.be/1f_Tj_JnStA?t=12m52s – Mowzer