The server is definitly omitting the Content-Length header here, which
seems to case the UA to not consider the body. in HTTP/1.0 it seems there
is no clear indication on how a response should be handled without
Content-Length (on the request side HTTP/1.0 requires a content-length to
be set, as Mojo::UA does).

RFC: http://www.w3.org/Protocols/HTTP/1.0/spec.html

I would definitly try to correctly send a content-length for your hpd
server, to ensure it is parsed correctly on all clients.
Otherwise you verify the spec and if you find the Mojo::UA behaviour not
according to the spec, provide a spec test.

I personally never had any issues with paring the response (but also never
had a server not supplying the content-length)

+rl
--
Roland Lammel
QuikIT - IT Lösungen - flexibel und schnell
Web: http://www.quikit.at
Phone: +43 (676) 9737845
Email: [email protected]

"Enjoy your job, make lots of money, work within the law. Choose any two."


On Tue, Jun 3, 2014 at 9:27 AM, Ivan Korjavin <[email protected]> wrote:

> I add more debug with morbo and MOJO_USERAGENT_DEBUG=1
>
> there is log:
>
> ====
>
> -- Blocking request (
> http://myserver:11080/hydra?command=check&txn_id=9&account=210220&sum=10.00
> )
> -- Connect (http:myserver:11080)
> -- Client >>> Server (
> http://myserver:11080/hydra?command=check&txn_id=9&account=210220&sum=10.00
> )
> GET /hydra?command=check&txn_id=9&account=210220&sum=10.00 HTTP/1.1
> User-Agent: Mojolicious (Perl)
> Connection: keep-alive
> Accept-Encoding: gzip
> Content-Length: 0
> Host: myserver:11080
>
>
> -- Client <<< Server (
> http://myserver:11080/hydra?command=check&txn_id=9&account=210220&sum=10.00
> )
> HTTP/1.0 200 OK
>
> -- Client <<< Server (
> http://myserver:11080/hydra?command=check&txn_id=9&account=210220&sum=10.00
> )
> Server: hpd/1.0.9.2
> Date: Tue, 03 Jun 2014 07:23:00 GMT
>
> <?xml version="1.0"
> encoding="utf-8"?><response><txn_id>9</txn_id><result>5</result><comment>Неверные
> данные</comment></response>
>
> ===
>
> But
> $ua->get($uri)->res;
>
> is
>
> HTTP/1.0 200 OK
> Date: Tue, 03 Jun 2014 07:20:09 GMT
> Content-Length: 0
> Server: hpd/1.0.9.2
>
> without data.
>
>
>
>>  I have web service with strange server (Server: hpd/1.0.9.2), and it
>> always return me  Content-Length: 0 on my request.
>>
>> my $ua          = Mojo::UserAgent->new;
>>> my $res  = $ua->get($uri)->res;
>>>
>>
>> And $res always empty.
>>
>> But wget ignore this content-length and show me tight document.
>>
>> How to ignore this in Mojo:Ua ?
>>
>  --
> You received this message because you are subscribed to the Google Groups
> "Mojolicious" group.
> To unsubscribe from this group and stop receiving emails from it, send an
> email to [email protected].
> To post to this group, send email to [email protected].
> Visit this group at http://groups.google.com/group/mojolicious.
> For more options, visit https://groups.google.com/d/optout.
>

-- 
You received this message because you are subscribed to the Google Groups 
"Mojolicious" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to [email protected].
To post to this group, send email to [email protected].
Visit this group at http://groups.google.com/group/mojolicious.
For more options, visit https://groups.google.com/d/optout.

Reply via email to