Here is the simplest example possible:
var fb = new Firebase('https://xxxxxxxxxxx.firebaseio.com/test');
fb.limitToLast(1).on('child_added', function(snap) {
console.log('key', snap.key());
console.log('val', snap.val());
});
fb.push({
date_now: Firebase.ServerValue.TIMESTAMP
});
If I open two tabs with this script, the one that actually pushes data gets local timestamp in child_added callback and the other tab that just listens gets proper server-generated one. As far as I understand it's done to exclude round-trip and save bandwidth.
But for my task this behaviour is unacceptable. How can I overcome it?
This is the console.log from pusher:
key -K59mrvEUhTaoNIQQoA4
val Object {date_now: 1449732570832}
and listeners (equals to server data seen in dashboard):
key -K59mrvEUhTaoNIQQoA4
val Object {date_now: 1449732571759}
See Question&Answers more detail:
os 与恶龙缠斗过久,自身亦成为恶龙;凝视深渊过久,深渊将回以凝视…