» Poradna » Programy

Http post přes telnet

 |   |  Microsoft Windows 10 Edge 18.18362

Ahoj, snažím se poslat HTTP POST request přes telnet (unix, ve Win ani není vidět, co píšu). Problém je v tom, že mezi HTTP headery a daty má být prázná řádka a já když dvakrát po sobě zmáčknu enter (aby se vložila prázdná řádka), tak mi telnet odešle request an server a já už nemůžu vyplnit data.Příklad:telnet ip port<otevře se telnet>POST /URI HTTP/1.1Content-Type: text/plainContent-Length: 8data=abc

Odpovědi na otázku

 |   |  Microsoft Windows 10 Chrome 77.0.3865.120

\n ?

Souhlasím  |  Nesouhlasím  |  Odpovědět
avatar
 | Microsoft Windows 10 Firefox 69.0

Nejsem si jisty, ale mozna za to muzou ridici sekvence telnetu. Zkus to pres netcat ("nc").

Souhlasím  |  Nesouhlasím  |  Odpovědět
 |   |  Microsoft Windows 10 Firefox 69.0

Telnet může klidně posílat každé písmeno zvlášť a server musí počkat na kompletní požadavek podle content-length. Pokud se spojení přeruší předčasně, je problém v prodlevě mezi pakety. To jde ve Windows vyřešit vložením celého požadavku do telnetu přes schránku.

Souhlasím  |  Nesouhlasím  |  Odpovědět
 |   |  Microsoft Windows 10 Edge 18.18362

Nakonec se ukázalo, že server chtěl ještě header Host: IP. Pak připojení neuzavřel, dokud se neposlalo content-length: n dat.

Souhlasím  |  Nesouhlasím  |  Odpovědět
avatar
 | Microsoft Windows 10 Firefox 68.0

No jo, nekompletni hlavicky. Aby ji nechtel, musel bys pouzit HTTP/0.9 a doufat, ze to server podporuje (na 99% ne).

Souhlasím  |  Nesouhlasím  |  Odpovědět

Související témata: Telnet, Unix, HTTP Post, Řádka


Určitě si přečtěte


Aktuální číslo časopisu Computer

Megatest 20 procesorů

Srovnání 15 True Wireless sluchátek

Vyplatí se tisknout fotografie doma?

Vybíráme nejlepší základní desky