2016-03-24 4 views
0

Ich bin ein wenig verwirrt auf die richtige Weise Firebase mit GeoFire-Ergebnissen abzufragen.GeoFire und Firebase Query

Wenn ich die Anweisungen für GeoFire lese, sollte ich die Standorte und Benutzerdaten in der Baumstruktur getrennt halten. So habe ich die folgenden:

-location 
    - userID 
      - g 
      - l 
      - 0:lat 
      - 1:long 

- user 
    -userID 
     - ... 

eine Geofire Abfrage verwenden, ich habe eine Reihe von Benutzer-IDs, die in der Nähe sind. Das ist der Punkt, an dem ich verwirrt bin. Ich sehe keine Methoden für Firebase, um ein Array von Elementen abzufragen. Ich möchte die Benutzerdaten für jeden Benutzer im Array abrufen.

Ich könnte die Liste durchlaufen und mehrere Anfragen machen, aber das scheint eine ineffiziente Möglichkeit, die gewünschten Ergebnisse zu erhalten.

Antwort

2

Ich sehe keine Methoden für Firebase, um ein Array von Elementen abzufragen. Ich möchte die Benutzerdaten für jeden Benutzer im Array abrufen.

In der Tat ist kein Anruf dafür.

Ich könnte die Liste durchlaufen und mehrere Anfragen machen, aber das scheint eine ineffiziente Möglichkeit, die gewünschten Ergebnisse zu erhalten.

Obwohl es ineffizient erscheinen mag, ist es tatsächlich nicht. Der Grund dafür ist, dass Firebase beim Laden mehrerer Elemente sehr effizient ist, da es alle über denselben Web-Socket abruft und die Anforderung pipeliert.

Für eine ausführlichere Erklärung siehe Speed up fetching posts for my social network app by using query instead of observing a single event repeatedly