web-dev-qa-db-fra.com

Comment obtenir le timestamp actuel du serveur firebase en millisecondes?

Je voulais obtenir le timestamp actuel de Firebase, sans pouvoir trouver un moyen de l'obtenir Je veux enregistrer l'enfant comme indiqué dans l'image. Et pour cela, je dois obtenir un horodatage et obtenir la date en conséquence. S'il vous plaît aider ...

here is the result I want to get

16
brijesh kumar

Vous pouvez définir l'heure du serveur à l'aide de ServerValue.TIMESTAMP, qui est un type Map<String, String> avec une paire {".sv" : "timestamp"}. Quand il est envoyé à la base de données firebase, il sera converti en un temps d'époque Long Unix comme ceci 1469554720.

Le problème est que vous ne pouvez pas définir cela directement comme une clé. La meilleure approche consiste à insérer l'horodatage dans votre objet et à utiliser DatabaseReference.Push() pour obtenir la clé unique garantie.

Par exemple 

DatabaseReference ref = FirebaseDatabase.getInstance().getReference();
String key = ref.Push().getKey(); // this will create a new unique key
Map<String, Object> value = new HashMap<>();
value.put("name", "shesh");
value.put("address", "lucknow");
value.put("timestamp", ServerValue.TIMESTAMP);
ref.child(key).setValue(value);

Si vous voulez l'enregistrer avec ce format (jj-mm-aaaa), il y a un bidouillage mais ce n'est pas recommandé. Vous devez d'abord l'enregistrer (ServerValue.TIMESTAMP) sur un autre nœud temporaire, puis extraire l'horodatage avant de le convertir dans ce format à l'aide de la classe Date.

23
Wilik

En fait, vous pouvez utiliser les fonctions de cloud et obtenir l'horodatage via une requête HTTP ..__ La fonction est très simple.

exports.getTimeStamp = functions.https.onRequest((req, res)=>{
  res.setHeader('Content-Type', 'application/json');
  res.send(JSON.stringify({ timestamp: Date.now() }));
});
3
abdoo_salem

Si vous utilisez Javascript via React - Native pour le développement Android, vous pouvez essayer d’obtenir une date manuellement à l’aide de la méthode Javascript Date() .

Exemple de code:

async OnFunction() {
  var today = new Date();
  var dd = today.getDate();
  var mm = today.getMonth() + 1;
  var yyyy = today.getFullYear();
  if (dd < 10) {
    dd = '0' + dd
  }
  if (mm < 10) {
    mm = '0' + mm
  }
  today = dd + '-' + mm + '-' + yyyy;

  await firebase.database().ref('/data_Location/' + today).Push(this.state.dataToBeWritten)
}
0
Tony Josi