Metode de trimitere a formularelor în JavaScript

Formularele pot fi trimise în două moduri: prin metoda GET sau metoda POST. Metoda de trimitere a formularului este reglată de atributul method al formularului.

de exemplu, să specificăm pentru formular metoda de trimitere GET:

public/form.html<form action="/handler/" method="GET">
  <input name="test1">
  <input name="test2">
  <input type="submit">
</form>

Și acum metoda POST:

public/form.html<form action="/handler/" method="POST">
  <input name="test1">
  <input name="test2">
  <input type="submit">
</form>

Să vedem acum care este diferența dintre cele două metode de trimitere. În cazul metodei GET, datele formularului vor fi vizibile în browser sub forma așa-numitei șir de parametri (query string), reprezentând perechi de tipul cheie-valoare, unde cheia va fi numele elementului formular, iar valoarea - datele introduse în el. În acest caz, perechile de valori vor fi separate de ampersand.

Datele trimise prin metoda GET vor ajunge pe serverul nostru în proprietatea get a obiectului cu date:

server.jsexport default {
  '/handler/': function(data) {
    console.log(data.get); // se va afișa în consola serverului
    return 'datele formularului au fost primite';
  }
}

Iar datele trimise prin metoda POST vor ajunge pe serverul nostru în proprietatea post a obiectului cu date:

server.jsexport default {
  '/handler/': function(data) {
    console.log(data.post); // se va afișa în consola serverului
    return 'datele formularului au fost primite';
  }
}

Pentru concizie, puteți efectua destructurare, pentru a obține datele noastre într-o variabilă separată:

server.jsexport default {
  '/handler/': function({get, post}) {
    console.log(get);
    console.log(post);
    return 'datele formularului au fost primite';
  }
}