Ich hab mal ein bisschen mit HTTP (über Winsock) experimentiert. Folgendes ist mein Request:
|
Quellcode
|
1
2
3
4
5
6
|
POST /test.php HTTP/1.1
host: hier.steht.natuerlich.der.host.name
content-type: application/x-www-form-urlencoded
content-length: 25
stuff=lol&haha=1234&pp=aa
|
Mein PHP-Script 'test.php' sieht folgendermaßen aus:
|
C-/C++-Quelltext
|
1
2
3
4
5
6
7
8
|
<?php
echo "hi\n";
foreach($_POST as $k => $v)
{
echo "$k => $v\n";
}
echo "bye\n";
?>
|
Ich sende es mit Winsock und testweise auch mit Telnet sowie mit Putty und bekomme bei allen folgendes Ergebnis:
|
Quellcode
|
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
|
HTTP/1.1 200 OK
Date: Wed, 16 Sep 2015 17:54:12 GMT
Server: Apache/2.4
Vary: Accept-Encoding
Transfer-Encoding: chunked
Content-Type: text/html
2a
hi
stuff => lol
haha => 1234
pp => aa
bye
0
|
Zu beachten ist '2a' vor 'hi', welches dort eigentlich nicht hingehören sollte sowie die 0 am Ende. Die '2a' ändert sich übrigens mit der Länge des HTTP-Bodies. Ist da bei mir ein Fehler?