Metódy odosielania formulárov v JavaScripte
Formuláre môžu byť odoslané dvoma spôsobmi:
metódou GET alebo metódou POST. Spôsob odoslania
formulára je regulovaný atribútom method formulára.
Napríklad, nastavme pre formulár metódu odoslania GET:
<form action="/handler/" method="GET">
<input name="test1">
<input name="test2">
<input type="submit">
</form>
A teraz metódu POST:
<form action="/handler/" method="POST">
<input name="test1">
<input name="test2">
<input type="submit">
</form>
Pozrime sa teraz, v čom je rozdiel medzi oboma metódami odoslania. V prípade metódy GET budú dáta formulára viditeľné v prehliadači v podobe takzvaného reťazca parametrov (query string), ktorý predstavuje páry typu kľúč-hodnota, kde kľúčom bude názov elementu formulára a hodnotou - zadané do neho dáta. Pritom budú páry hodnôt oddelené ampersandmi.
Dáta odoslané metódou GET sa dostanú
na našom serveri do vlastnosti get objektu
s dátami:
export default {
'/handler/': function(data) {
console.log(data.get); // vypíše sa do konzoly servera
return 'form data received';
}
}
A dáta odoslané metódou POST sa dostanú
na našom serveri do vlastnosti post objektu
s dátami:
export default {
'/handler/': function(data) {
console.log(data.post); // vypíše sa do konzoly servera
return 'form data received';
}
}
Pre stručnosť je možné vykonať destructuring, aby sme získali naše dáta do samostatnej premennej:
export default {
'/handler/': function({get, post}) {
console.log(get);
console.log(post);
return 'form data received';
}
}