LINUX.ORG.RU

HTTP 1.0 и HTTP 1.1 разница в заголовках


0

0

Не могу разобратся почему на perl скрипт который должени передовать методом HTTP POST информацию на сервер
с http 1.0 работает, а если ставлю, http 1.1 то тоже работает, но с time outami:
как правильно сделать, что работало и с HTTP1.1 без задержек(у меня подозрение на "\r\n\r\n")


my $cmd= "openssl s_client -connect $server -quiet 2> /dev/null";

$str="POST $url HTTP/1.0\r
Host: $server\r
Content-Type: application/x-www-form-urlencoded\r
User-Agent: Mozilla/5.0 (X11; U; Linux i686; en-US;rv:1.4)Gecko/20030630 Galeon/1.3.8\r
Content-Length: ".length($post)."\r\n\r\n$post\r\n\r\n";

$cmd="echo \"$str\" | $cmd";

★★

RFC-2616:
generic-message = start-line
                  *(message-header CRLF)
                  CRLF
                  [ message-body ]
Обрати внимание: CRLF

anonymous
()
Ответ на: комментарий от anonymous

> Обрати внимание: CRLF

С этим тут как раз всё нормально. Если внимательно смотреть :)

watashiwa_daredeska ★★★★
()

> Content-Length: ".length($post)."\r\n\r\n$post\r\n\r\n";

А последние "\r\n\r\n" зачем?

> $cmd="echo \"$str\" | $cmd";

$cmd="echo -n \"$str\" | $cmd";

watashiwa_daredeska ★★★★
()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.