Vormide saatmise meetodid JavaScriptis

Vorme saab saata kahel viisil: meetodil GET või meetodil POST. Vormi saatmise viisi reguleerib vormi atribuut method.

Näiteks määrame vormile saatmismeetodiks GET:

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

Ja nüüd meetod POST:

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

Vaatame nüüd, mis vahe on kahel saatmismeetodil. Meetodi GET puhul on vormi andmed nähtavad brauseris nn parameetrite stringina (query string), mis esindab endast paare kujul võti-väärtus, kus võtmeks on vormielemendi nimi ja väärtuseks - sinna sisestatud andmed. Sel juhul on väärtuste paarid eraldatu ampersandidega.

Meetodiga GET saadetud andmed satuvad meie serveris objekti andmetega omadusse get:

server.jsexport default {
  '/handler/': function(data) {
    console.log(data.get); // kuvatakse serveri konsooli
    return 'vormi andmed vastu võetud';
  }
}

Ja meetodiga POST saadetud andmed satuvad meie serveris objekti andmetega omadusse post:

server.jsexport default {
  '/handler/': function(data) {
    console.log(data.post); // kuvatakse serveri konsooli
    return 'vormi andmed vastu võetud';
  }
}

Lühiduse huvides saab teha destruktureerimise, et saada oma andmed eraldi muutujasse:

server.jsexport default {
  '/handler/': function({get, post}) {
    console.log(get);
    console.log(post);
    return 'vormi andmed vastu võetud';
  }
}