Thank you Roland. But I can't do anything with this server, its not mine, its third party integration.
May be, I can switch mojo:ua for something less strict? I need advice. вторник, 3 июня 2014 г., 14:01:27 UTC+6 пользователь Roland Lammel написал: > > 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] <javascript:> > > "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] > <javascript:>> 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] <javascript:>. >> To post to this group, send email to [email protected] >> <javascript:>. >> 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.
