Я действительно хочу «нажать с приоритетом». Но этого не существует, поэтому я планирую сделать push с параметрами, а затем setWithPriority с возвращенной ссылкой. Как и в примере в документах.Firebase - 'pushWithPriority' - и проверка
var messageListRef = new Firebase('https://samplechat.firebaseio-demo.com/message_list');
var newMessageRef = messageListRef.push();
newMessageRef.set({ 'user_id': 'fred', 'text': 'Yabba Dabba Doo!' });
но больше как
var messageListRef = new Firebase('https://samplechat.firebaseio-demo.com/message_list');
var newMessageRef = messageListRef.push();
newMessageRef.setWithPriority({ 'user_id': 'fred', 'text': 'Yabba Dabba Doo!' },1000);
То, что я не могу найти то, что происходит с проверкой, называют спиной к пустой толчок?
Он пытается создать пустой узел - активирует проверку и обратный вызов и т. Д.?
Или он просто возвращает ссылку, которая является (вроде) гарантией того, что она уникальна для всех других нажатий этого родителя? С «добавлением ребенка»/проверки и т. Д. Стрельба только по «набору»?
Редактировать
Ok. Имея это подтвердил, что нет на стороне сервера взаимодействия на без параметров Пуш - мой код теперь гласит:
var ref = window.lastref.child("Offers").push();
ref.setWithPriority(spaceof.data, Firebase.ServerValue.TIMESTAMP,function (data) { $("body").prepend(data); }
firebase timstamp успешно дает стороне сервера метку времени в качестве приоритета, я намерен использовать этот приоритет для сбора мусора - удаление старых «предложений», которые лежали вокруг.
Чтобы предотвратить подделку клиентов, я буду искать, чтобы добавить правило проверки/безопасности, что приоритет нового узла должен быть в течение нескольких секунд от фактической отметки времени сервера (если я застрял, я буду обратно!).
Push просто создает уникальный идентификатор и возвращает ссылку на него. Это чистая операция на стороне клиента, поэтому никакие проверки на стороне сервера (например, правила безопасности Firebase) не запускаются. –
Отлично - спасибо Фрэнк - спас меня от экспериментов! – pperrin
Похоже, это должен быть ответ @FrankvanPuffelen – Kato