Добрый день!
Пытаюсь разобраться - почему, если указано, что сеть работает только сетевым порядком байтов (big-endian), а у меня на компьютере little-endian кодировка, тогда почему успешно работает код такого вида?
const char* request = "GET / HTTP/1.1\r\n\Host: site.ru\r\n\r\n";
//... creating socket and connection ...
send(socket, request, lenData, 0);
recv(socket, buffer, 1024*10, 0); //code 200 [OK]
Почему это нормально работает? Потому, что когда я пытаюсь таким же образом получить данные с сервера с помощью насма - сервер меня не понимает:
msgRequest db "GET / HTTP/1.1\r\n\Host: site.ru\r\n\r\n"
lenMsgRequest $-msgRequest
; ... creating socket and connection ...
push 0
push lenMsgRequest
push msgRequest
push dword [socket]
call _send@16
cmp eax, -1
je error
push 0
push 8128
push buffer
push dword [socket]
call _recv@16 //code 400 [Bad Request]