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ä?
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.
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...
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
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...
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öä?
Näyttäis delphi olevan hengissä, joskaan ei borlandin toimesta :)
https://www.embarcadero.com/products/delphi
Aihe on jo aika vanha, joten et voi enää vastata siihen.