[SPb-pm] AnyEvent::HTTPD vs POST

Denis Ibaev dionys at gmail.com
Tue Jun 17 01:51:00 PDT 2014


В документации же сказано:

content - Returns the request content or undef if only parameters for
a form were transmitted.

А при Content-Type: application/x-www-form-urlencoded он думает, что
есть параметры. Это видно в
https://metacpan.org/source/ELMEX/AnyEvent-HTTPD-0.93/lib/AnyEvent/HTTPD/HTTPConnection.pm#L302

sub handle_request {
   my ($self, $method, $uri, $hdr, $cont) = @_;

   $self->{keep_alive} = ($hdr->{connection} =~ /keep-alive/io);

   my ($ctype, $bound) = _content_type_boundary ($hdr->{'content-type'});

   if ($ctype eq 'multipart/form-data') {
      $cont = $self->decode_multipart ($cont, $bound);

   } elsif ($ctype =~ /x-www-form-urlencoded/o) {
      $cont = parse_urlencoded ($cont);
   }

   $self->event (request => $method, $uri, $hdr, $cont);
}


17 июня 2014 г., 12:00 пользователь Ruslan Kuksa
<perl-list at spb.csat.ru> написал:
> задел меня доклад по AnyEvent, решил переписать одну фигню.
> Клиент отправляет данные на сервер методом POST:
>
> POST / HTTP/1.1
> Host: localhost:8080
> Accept: */*
> Content-Length: 1797
> Content-Type: application/x-www-form-urlencoded
> Expect: 100-continue
>
> Как вытащить те самые 1797 байтов данных?
> Чтение документации очень помогло, я узнал что это возможно, но не узнал
> как. (:

-- 
Денис Ибаев


More information about the Spb-pm mailing list