Lomakemerkkiä käytetään lomakkeen sisällön ilmaisemiseen; tätä kutsutaan myös lomakekontrolliksi . Nämä lomakkeet on täytetty, kun tiedot lähetetään etälaitteelle jatkokäsittelyä varten. Lomakkeen toiminta sisältää kaksi keskeistä asiaa: entinen on sen ohjelman osoite, joka käsittelee lomakkeen sisältöä ACTIONin avulla . Myöhemmin on menetelmän määrittely, jossa lomakkeen data virtaa METHOD- määritteen avulla.
ACTION-määrite kuvaa, miten HTML-lomaketta käsitellään. METHOD-attribuutti hallitsee tietojen toimittamisprosessia. GET- ja POST-menetelmä kuuluu METHOD-määritteeseen.
Vertailukaavio
Vertailun perusteet | SAADA | LÄHETTÄÄ |
---|---|---|
Parametrit asetetaan sisään | URI | ruumis |
Tarkoitus | Asiakirjojen hakeminen | Tietojen päivitys |
Kyselyn tulokset | Kykenee kirjanmerkiksi. | Ei voi merkitä kirjanmerkiksi. |
turvallisuus | Haavoittuva, kuten läsnä tekstissä | Turvallisempi kuin GET-menetelmä |
Lomaketiedon tyypin rajoitukset | Vain ASCII-merkit ovat sallittuja. | Ei rajoituksia, jopa binaaridata on sallittua. |
Lomakkeen datan pituus | Pitäisi pitää mahdollisimman pienenä. | Voi olla missä tahansa. |
näkyvyys | Voi nähdä kuka tahansa. | Ei näytä muuttujia URL-osoitteessa. |
Muuttuva koko | Jopa 2000 merkkiä. | Jopa 8 Mb |
välimuistia | Menetelmätiedot voidaan tallentaa välimuistiin. | Ei välimuistia. |
GET-menetelmän määritelmä
GET-menetelmää käytetään pyytämään URL-osoitetta Web-palvelimelta hakemaan HTML-asiakirjat. Selaimilla on tavanomainen menetelmä toimittaa tiedot, jotka lasketaan osana HTTP-protokollaa. GET-menetelmä esitetään URL-muodossa, jotta se voidaan merkitä kirjanmerkiksi. GETiä käytetään laajasti hakukoneissa. Kun käyttäjä on lähettänyt kyselyn hakukoneelle, moottori suorittaa kyselyn ja antaa tuloksena olevan sivun. Kyselyn tulokset voidaan asettaa linkiksi (kirjanmerkki).
GET-menetelmä mahdollistaa ankkureiden muodostamisen, mikä auttaa pääsemään CGI-ohjelmaan kyselyn puuttuessa lomakkeen käytöstä. Kysely on muodostettu linkiksi, joten kun linkki vierailee, CGI-ohjelma hakee sopivat tiedot tietokannasta.
GET-menetelmässä on joitakin turvallisuusongelmia, koska lisätty tieto näkyy URL-osoitteessa. Vain rajoitettu määrä tietoja voidaan siirtää GET-menetelmän kautta, koska selaimen kulkevan URL-osoitteen pituus voi olla tuhat merkkiä.
Toinen GET-menetelmää koskeva ongelma on se, että se ei voi käsitellä vieraita kieliä. GET-menetelmää ei suositella käytettäväksi, mutta silti kun määritteitä ei määritetä, GET-menetelmää käytetään oletuksena.
POST-menetelmän määritelmä
POST- menetelmä soveltuu tilanteeseen, jossa huomattava määrä tietoja voi kulkea läpi. Kun palvelin vastaanottaa pyynnön POST: a käyttävällä lomakkeella, se jatkaa "kuuntelemista" vasemmanpuoleisesta tiedosta. Yksinkertaisesti sanottuna menetelmä siirtää välittömästi lomakkeen tulon kaikki asiaankuuluvat tiedot heti URL-osoitteeseen tehdyn pyynnön jälkeen.
POST-menetelmän on muodostettava kaksi yhteyttä Web-palvelimeen, kun taas GET tekee vain yhden. POST: n pyyntöjä hallitaan samalla tavalla kuin sitä hallitaan GET-menetelmässä, jossa välilyönnit on merkitty plus (+) -merkillä ja loput merkit koodataan URL-kuvioon. Se voi myös lähettää tiedoston kohteita.
GET: n ja POST-menetelmän keskeiset erot HTML-muodossa
- GET-menetelmä asettaa parametrit URI: n sisälle, kun POST-menetelmä liittää parametrit kehoon.
- GET: ää käytetään pääasiassa tietojen noutamiseen. POST-menetelmän tarkoituksena on päivittää tiedot.
- POST-kyselyn tuloksia ei voi merkitä kirjanmerkiksi, kun taas GET-kyselyn tulokset voidaan merkitä kirjanmerkiksi, koska ne ovat URL-muodossa.
- GET-menetelmässä tiedot näkyvät URL-osoitteessa, joka lisää haavoittuvuuksia ja hakkeroinnin riskiä. Sitä vastoin POST-menetelmä ei näytä muuttujaa URL-osoitteessa, ja siinä voidaan käyttää myös useita koodaustekniikoita, jotka tekevät siitä joustavan.
- Kun GET-menetelmää käytetään lomakkeessa, vain ASCII-merkit hyväksytään tietotyypeissä. Päinvastoin, POST-menetelmä ei sido lomaketietotyyppejä ja sallii sekä binäärisiä että ASCII-merkkejä.
- GET-menetelmän muuttujan koko on noin 2000 merkkiä. Käänteisesti POST-menetelmä mahdollistaa jopa 8 Mb: n vaihtelevan koon.
- GET-menetelmän tiedot ovat välimuistissa, kun taas POST-menetelmän tiedot eivät ole.
Esimerkki GET: stä
Kun käyttäjä syöttää minkä tahansa URL-osoitteen selaimen sijaintiriville, kuten http // www.example.com / xyz / file1.htm . Osoite muunnetaan sitten kelvolliseksi HTTP GET -pyynnöksi, esimerkiksi GET / xyz / file1.htm HTTP / 1.0 .
Tämä pyyntö siirretään sitten palvelimelle www.example.com . Pyyntö pyytää tiedostoa1.htm xyz- hakemistossa ja liittyykö se HTTP: n 1, 0-dialektiin. Tällöin käyttäjä ei saa tiedostoa itsestään tiedoston lähettämisen jälkeen, vaan todellisuudessa ohjelma toimii taustalla käsittelemään lomaketietoja.
Käyttäjä vaatii siirtämään lomakkeen tiedot ohjelman nimen mukaan sen toteuttamiseksi. Tämän toteutuksen saavuttamiseksi lomakkeen tiedot liitetään pyydettyyn URL-osoitteeseen. Se luo URL-osoitteen, jossa on satoja merkkejä ja todelliset tiedot, esimerkiksi //www.example.com/cgi-x/comments.exe?Name=AI+Alena&Age=23&Gender=female .
Esimerkki POSTista
Lomakkeen lähettämät tiedot voivat näkyä nimellä Nimi = AI + Alena ja ikä = 23 & Sukupuoli = nainen . Ohjelma käsittelee tiedot jakamalla tiedot. Lomaketiedot voidaan koodata eri tavalla käyttäen ENCTYPE- attribuuttia POST-menetelmässä.
Lomakkeen sisältöä ei yleensä näy URL-osoitteessa, ja sen tärkein etu on, että huomattava määrä tietoja voidaan lähettää POST-menetelmällä.
johtopäätös
GET- ja POST-menetelmiä käytetään tietojen lähettämiseen palvelimelle, ja tärkein ero niiden välillä on se, että GET-menetelmä liittää tiedot lomakkeen toimintaattribuutissa määritellylle URI: lle. Sitä vastoin POST-menetelmä liittää tietoja pyydettyyn elimeen. GET-menetelmän käyttö ei ole sopiva, kun arkaluonteiset tiedot on täytettävä lomakkeessa. POST-menetelmä on hyödyllinen, kun käyttäjä vaatii salasanojen tai muiden luottamuksellisten tietojen täyttämistä.