[Catalyst] Testing RESTful web services

Ian Docherty catalyst at iandocherty.com
Mon Oct 6 10:46:38 BST 2008


  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 =3D HTTP::Request->new(
>>>>   'POST',
>>>>   '/foo',
>>>>   [
>>>>       Content_Type =3D> 'text/plain'
>>>>   ],
>>>>   "hello world",
>>>>   );
>>>>         =

>>> It's Content-type =3D> ...
>>>       =

>> 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 at 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.u=
k/
> Dev site: http://dev.catalyst.perl.org/
>
>   =


-------------- next part --------------
An HTML attachment was scrubbed...
URL: http://lists.scsys.co.uk/pipermail/catalyst/attachments/20081006/46a22=
da6/attachment.htm


More information about the Catalyst mailing list