Kirjautuminen

Haku

Tehtävät

Keskustelu: Nettisivujen teko: GET ja POST

jjude [23.10.2018 14:12:16]

#

Puhelimessa softa joka lähettää tietoja palvelimelle HTTP GET-metodilla.
Mikä on max merkkien määrä mikä GET:llä voidaan muuttujassa lähettää?
Kokeilin niin 100 merkkiä menee ok, mutta 1000 merkkiä ei.
Ilmeisesti POST:lla voi lähettää enemmän merkkejä?

Grez [23.10.2018 14:37:40]

#

GETillähän ei ylipäätään pitäisi "lähettää tietoja". Eli sillä haetaan jotain ja jos siinä jotain tietoa menee palvelimelle päin niin se on tieto "mitä haetaan". GET-pyynnön ei pitäisi aiheuttaa minkäänlaista tiedon tallentumista palvelimen päässä (paitsi ehkä jotain lokia että tietoa on haettu)

Toisaalta HTTP-protokollassa ei ole asetettu enimmäispituutta sen suuremmin URLille (GET) kuin POST datallekaan.

Eli tietämättä sen enempää palvelimesta tai softasta jota siellä pyörität ei pysty sanomaan oikeastaan mitään rajasta. POSTilla tyypillisesti kuitenkin saa lähetettyä enemmän dataa palvelimen päähän kuin GETillä.

Sinänsä 1000 merkkiä nyt pitäisi kyllä mennä heittämällä GETilläkin.

jjude [23.10.2018 15:10:09]

#

Olen täysi amatööri ja aloittelija.
Pitää muuttaa POST juttuun.

Palvelin on IIS ja "vastaanotava lomake" käyttää ASP:tä.
<meta charset="UTF-8">

Kun lähetän GET:llä ASP lukee arvot Request.QueryString
kun taas POST:lla se lukee Request.Form

Request.QueryString ääkköset menee kantaan oikein,
mutta Request.Form ei mene vaan on tuota "HTML % koodia"

On tää vaan niin vaikeeta tuon HTML:n kanssa...

groovyb [23.10.2018 16:41:41]

#

1000 merkkiä menee kyllä, mutta rajat tuossa tulee kyllä vastaan aikanaan. web serverit voidaan konffata ottamaan vastaan isojakin urleja (getit siis kulkee urlia pitkin), mutta selaimet myös asettavat omat rajoitteensa.

Internet Explorer: 2,083 characters, with no more than 2,048 characters in the path portion of the URL
Firefox: 65,536 characters show up, but longer URLs do still work even up past 100,000
Safari: > 80,000 characters
Opera: > 190,000 characters

jjude [23.10.2018 17:18:29]

#

Delphillä siis koodaan.
Ehkä tuo raja tulee vastaan tuossa Delphin idHTTP komponentissa?

En nyt pääse testaamaan, mutta voisiko tuo ääkkösongelma
ASP:n Request.QueryString ja Request.Form välillä johtua siitä,
että teen sekä GET että POST jutussa merkkijonolle jonkin tuollaisen
TIdURI.URLEncode() jutun. GET:ssä tuo pitää olla.
Kopsasin sen vaan suoraan POST juttuun, ehkä ei pitäisi.
Pitää huomenna kokeilla...

Lisäys:

Ääkkösongelma johtui valitusta virtuaalinäppiksestä.
Jos on oletus näppis tulee GET ja POST jutuilla tietokantaan noita
prosenttijuttuja %C3%A4%20 mutta kun valitsee Alphabet niin tulee ääkköset.

Myös Android on ihmeellinen...

Matti Holopainen [23.10.2018 20:50:54]

#

Mitä ihmettä, vieläkö Delphillä voi koodata?

Itse käytin Borlandin Turboja (Pascal ja C++) 1980-luvun alusta alkaen ja lopuksi Delphiä noin 10 vuotta 1990-luvun puolivälistä. Kun Borland muutti nimeään, myytiin ja lopulta hävisi jonnekin, niin vaihdoin javaan.

Mutta mistä olet Delphin löytänyt? Onko se jotenkin Borlandin perintöä?

maka78 [23.10.2018 21:47:06]

#

Näyttäis delphi olevan hengissä, joskaan ei borlandin toimesta :)
https://www.embarcadero.com/products/delphi

Vastaus

Aihe on jo aika vanha, joten et voi enää vastata siihen.

Tietoa sivustosta