JavaScript-те форма жіберу әдістері

Формалар екі тәсілмен жіберілуі мүмкін: GET әдісі немесе POST әдісі. Форманы жіберу тәсілі форманың method атрибутымен реттеледі.

Мысалы, форма үшін GET жіберу әдісін көрсетейік:

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

Енді POST әдісі:

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

Енді екі жіберу әдісінің арасындағы айырмашылықты қарастырайық. GET әдісі жағдайында форма деректері браузерде сөзсіз параметрлер жолы (query string) түрінде көрінеді, ол кілт-мән жұптары түрін болады, мұнда кілт форма элементінің атауы болады, ал мән - енгізілген деректер. Бұл жағдайда мән жұптары амперсандтармен бөлінеді.

GET әдісімен жіберілген деректер біздің серверде деректер нысанының get қасиетіне түседі:

server.jsexport default {
  '/handler/': function(data) {
    console.log(data.get); // сервер консолына шығады
    return 'form data received';
  }
}

Ал POST әдісімен жіберілген деректер біздің серверде деректер нысанының post қасиетіне түседі:

server.jsexport default {
  '/handler/': function(data) {
    console.log(data.post); // сервер консолына шығады
    return 'form data received';
  }
}

Қысқалығы үшін деструктуризацияны орындауға болады, деректерді бөлек айнымалыға алу үшін:

server.jsexport default {
  '/handler/': function({get, post}) {
    console.log(get);
    console.log(post);
    return 'form data received';
  }
}