I'm trying to reproduce headers to submit to a form using HTTP::Request::Common. My problem is that I can't generate a proper Content-Type: multipart/form-data; boundary= header which is like the one Explorer gives. I haven't even come close. Can you help?
Note: I don't necessarily have to use HTTP::Request::Common I just need to generate the proper "boundary". If there is some other way then I'd appreciate hearing about that as well.
Here is the code, followed by my output, followed by the proper output. Many thanks in advance:
#the code
#!/usr/bin/perl -w
use HTTP::Request::Common;
$request = HTTP::Request->new();
$request = POST '/database/some.php3',
Referer => 'http://www.mydomain.com/some.php3',
Accept_Language => 'en-us',
Content_Type => 'multipart/form-data',
Accept_Encoding => 'gzip, deflate',
User_Agent => 'Mozilla/4.0',
Host => 'www.mydomain.com',
Connection => 'Keep-Alive',
Content =>
{
abc => 'dog',
cde => '100',
};
print $request->as_string;
#my output
POST /some.php3
Connection: Keep-Alive
Accept-Encoding: gzip, deflate
Accept-Language: en-us
Host: www.mydomain.com
Referer: http://www.mydomain.com/some.php3
User-Agent: Mozilla/4.0
Content-Length: 224
Content-Type: multipart/form-data; boundary=xYzZY
--xYzZY
Content-Disposition: form-data; name="nosresponses"
100
--xYzZY
Content-Disposition: form-data; name="userkeyword"
dog
--xYzZY--
#proper output
POST /some.php3 HTTP/1.1
Referer: http://www.mydomain.com/some.php3
Accept-Language: en-us
Content-Type: multipart/form-data; boundary=--------------------------
+-7d32542f104c8
Accept-Encoding: gzip, deflate
User-Agent: Mozilla/4.0
Host: www.mydomain.com
Content-Length: 362
Connection: Keep-Alive
Cache-Control: no-cache