Re: Re: Sending multipart/form-data request with PECL.
| From: | Shawn McKenzie | Date: | Thu, 05 Mar 2009 00:12:57 +0000 |
| Subject: | Re: Re: Sending multipart/form-data request with PECL. | ||
| References: | 1 2 3 | Groups: | php.general |
| Request: | Send a blank email to php-general+get-289304@lists.php.net to get a copy of this message | ||
Jason Cipriani wrote:
> On Wed, Mar 4, 2009 at 2:10 PM, Shawn McKenzie <nospam@mckenzies.net> wrote:
>> Jason Cipriani wrote:
>>> Is there a way to force PECL to use multipart/form-data encoding for
>>> all post fields added with addPostFields, even when you are not
>>> calling addPostFile to add a file?
>> Try: setContentType()
>
> Thanks! But, I tried that, and according to my packet sniffer, calling
> setContentType() actually seems to have no effect whatsoever on the
> request! Is there something I have to enable? Here's an example, it's
> just a fake request, used to see what HttpRequest outputs:
>
> $fields =
> array("field"=>"value","other"=>"something")
> $http_req = new
> HttpRequest('http://localhost:9999/resource');
> $http_req->setMethod(HTTP_METH_POST);
> $http_req->setContentType('multipart/form-data');
> $http_req->addPostFields($fields);
> $http_req->send();
>
> Here is what it produces, it's still application/x-www-form-urlencoded:
>
> === BEGIN REQUEST ===
> POST /resource HTTP/1.1
> User-Agent: PECL::HTTP/1.6.1-dev (PHP/5.2.6)
> Host: localhost:9999
> Accept: */*
> Content-Length: 27
> Content-Type: application/x-www-form-urlencoded
>
> field=value&other=something
> === END REQUEST ===
>
> Even if I call setContentType with some made up content type, it
> doesn't affect the output; am I doing something wrong there?
>
> Thanks!
> Jason
I don't know. I just looked it up in the manual. If it doesn't work
then it may be a bug. Hard to tell because the documentation for
httprequest is very light.
--
Thanks!
-Shawn
http://www.spidean.com