Metoder for å sende skjemaer i JavaScript

Skjemaer kan sendes på to måter: GET-metoden eller POST-metoden. Måten skjemaet sendes på reguleres av method-attributtet til skjemaet.

For eksempel, la oss spesifisere GET-metoden for skjemaet:

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

Og nå POST-metoden:

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

La oss nå se på hva forskjellen er mellom de to sendemetodene. I tilfellet med GET-metoden vil skjemadataene være synlige i nettleseren i form av den såkalte parameterstrengen (query string), som representerer par av typen nøkkel-verdi, hvor nøkkelen vil være navnet på skjemaelementet, og verdien - dataene som er skrevet inn i det. Verdiparene vil være separert med ampersand-tegn.

Data sendt med GET-metoden vil havne på serveren vår i egenskapen get til objektet med data:

server.jsexport default {
  '/handler/': function(data) {
    console.log(data.get); // vil vises i serverkonsollen
    return 'skjemadata mottatt';
  }
}

Og data sendt med POST-metoden vil havne på serveren vår i egenskapen post til objektet med data:

server.jsexport default {
  '/handler/': function(data) {
    console.log(data.post); // vil vises i serverkonsollen
    return 'skjemadata mottatt';
  }
}

For korthets skyld kan du utføre destrukturering for å få dataene våre inn i en egen variabel:

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