David Wright wrote:
Ian Docherty wrote:
Moritz Onken wrote:
Am 05.10.2008 um 10:47 schrieb Ian Docherty:
Hi
I am writing a simple test to test a POST method in a web service
but my controller does not see any content in the POSTed request.
In the controller both the $c->request->body and
$c->request->content_length are undefined.
Any ideas?
------ test.t -------
use strict;
use warnings;
use Catalyst::Test 'MyApp';
use HTTP::Request;
my $req = HTTP::Request->new(
'POST',
'/foo',
[
Content_Type => 'text/plain'
],
"hello world",
);
It's Content-type => ...
Yup, typo on my part, but it does not change the problem. There is
still no content in the request when it gets to the controller.
It's not a typo, the constructor accepts underscores as well as dashes
so that you can build requests without having to quote the hash keys.
Just a slight modification to my original statement. In the controller
the request body is undef, but the request length is 0 (not undef)
IIRC you have to manually add content-length yourself, HTTP::Request
doesn't build it for you.
Excellent. That was exactly the problem. Thanks.
Regards,
David
_______________________________________________
List: Catalyst@lists.scsys.co.uk
Listinfo: http://lists.scsys.co.uk/cgi-bin/mailman/listinfo/catalyst
Searchable archive: http://www.mail-archive.com/catalyst@lists.scsys.co.uk/
Dev site: http://dev.catalyst.perl.org/
_______________________________________________
List: Catalyst@lists.scsys.co.uk
Listinfo: http://lists.scsys.co.uk/cgi-bin/mailman/listinfo/catalyst
Searchable archive: http://www.mail-archive.com/catalyst@lists.scsys.co.uk/
Dev site: http://dev.catalyst.perl.org/