Metode pošiljanja obrazcev v JavaScript

Obrazci se lahko pošiljajo na dva načina: z metodo GET ali metodo POST. Način pošiljanja obrazca določa atribut method obrazca.

Na primer, določimo za obrazec metodo pošiljanja GET:

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

In zdaj metodo POST:

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

Poglejmo zdaj, v čem je razlika med obeema metodama pošiljanja. V primeru metode GET bodo podatki obrazca vidni v brskalniku v obliki tako imenovanega poizvedovalnega niza (query string), ki predstavlja pare v obliki ključ-vrednost, kjer je ključ ime elementa obrazca, vrednost pa vneseni podatki. Pri tem bodo pari vrednosti ločeni z ampersandi.

Podatki, poslani z metodo GET, bodo prišli na našem strežniku v lastnost get objekta s podatki:

server.jsexport default {
  '/handler/': function(data) {
    console.log(data.get); // izpiše se v konzolo strežnika
    return 'podatki obrazca prejeti';
  }
}

Podatki, poslani z metodo POST, bodo prišli na našem strežniku v lastnost post objekta s podatki:

server.jsexport default {
  '/handler/': function(data) {
    console.log(data.post); // izpiše se v konzolo strežnika
    return 'podatki obrazca prejeti';
  }
}

Za kratkost lahko izvedemo destrukturiranje, da dobimo naše podatke v ločeno spremenljivko:

server.jsexport default {
  '/handler/': function({get, post}) {
    console.log(get);
    console.log(post);
    return 'podatki obrazca prejeti';
  }
}