2013-03-10 21 views
6

mam formę i funkcję dołączania w moim klienta pliku:po stronie serwera w Meteor

function submitme() { 
    var message = $('#daform').serializeJSON(); 
    message.owner = Meteor.user().username; 
    if(!message.description || !message.location.lat || !message.location.lng || !message.mysex || !message.yoursex) { 
     return;   
     } 
     else 
     { 
      lists.insert(message); 
      console.log("Submitted!"); 
      $('#daform')[0].reset(); 
     } 
} 

który działa całkiem dobrze, chociaż - to KLIENT strona walidacja => nie bezpieczne.

Jak zaimplementować sprawdzanie poprawności "kopii zapasowej" w pliku mojego serwera? (+ pytanie dodatkowe: jak ustawić licznik czasu, aby po przesłaniu trzeba było poczekać X sekund przed ponownym przesłaniem?)

Odpowiedz

2

Można użyć http://docs.meteor.com/#deny (Można użyć zezwolenia, ale może być łatwiejsze umieszczaj elementy sprawdzania poprawności w oddzielnym deny), ponieważ odmowa zostanie zastąpiona, jeśli nie zostanie wstawiona:

Działa jako metoda kopii zapasowej na serwerze tuż przed jej wstawieniem.

Dzięki swojej kolekcji wiadomości

Server Js

message.deny({ 
    insert: function (userId, doc) { 
     return (!doc.description || !doc.location.lat || !doc.location.lng || !doc.mysex || !doc.yoursex); 
    }, 
    update: function (userId, docs, fields, modifier) { 
     return (!doc.description || !doc.location.lat || !doc.location.lng || !doc.mysex || !doc.yoursex); 
    } 
); 

Note: Wracając fałszywe od zaprzeczyć środki nie zaprzeczać. Aby odmówić aktualizacji, musisz zwrócić wartość true.

+0

dziękuję! oznaczałoby to: 'lists.deny ({ update: function() { return false; } });' że wszystkie aktualizacje są wyłączone? (nie działa: /) –

+0

, aby odmówić wszystkim aktualizacjom, których potrzebujesz, aby zamiast tego zwrócić 'true',' false' oznacza, że ​​nie chcesz tego odmawiać. Który nie działa ten, który napisałem? – Akshat

+0

ah tak, prawda, przepraszam Zmiksowałem deny/allow .. (nie, moje, teraz próbuję twoje, ale jestem pewien, że to zadziała) –

Powiązane problemy