Re: curl-and-php Digest, Vol 56, Issue 5

Peter Miller <[email protected]>
Newsgroups gmane.comp.web.curl.php
Message-ID <[email protected]>
> I tried it, and got the same problem - must be a bug in PHP...
> I'm not sure what you're trying to verify here, but if you're just trying
> to
> make sure that the same data is going through HTTP as HTTPS, you could
> simply compare the content-length fields.
> -Stephen
>
mm do you mean the php bug is that it doesnt show the outgoing post fields?
coz im not so sure that curl can do that in the linux shell either? i guess
the content length being the same is a good indication that the data is the
same. furthermore when i use http i can view the postfields with my proxy.
its a roundabout solution but i'll accept it :P
thanks for all your help!


>
> On Thu, Apr 8, 2010 at 21:41, Peter Miller <[email protected]
> >wrote:
>
> > thanks for the quick response! unfortunately, as daniel.haxx.se says,
> http
> > headers only shows http requests between the browser and curl script. i
> do
> > use the browser to display the output of my curl script, which is great
> for
> > displaying the returned html from the site i'm contacting, however since
> the
> > curl http requests do not pass though the browser the live http headers
> > program does not log them. check it out for yourself with this simple
> > example program:
> > <?php
> > $ch = curl_init();
> > curl_setopt($ch,CURLOPT_URL,"http://curl.haxx.se/");
> > curl_setopt($ch,CURLOPT_POST,1);
> >
> >
> curl_setopt($ch,CURLOPT_POSTFIELDS,'post_variable=try+to+find+this+post+request+in+the+live+http+headers+program');
> > curl_exec($ch);
> > ?>
> > if you turn live http headers on in the browser before navigating to this
> > curl script in your browser you will notice that the post string never
> shows
> > up in the live http headers. its kind of like:
> >
> > |browser|--------a----------|curl script|---------b----------|remote site
> (
> > http://curl.haxx.se/ in the example)|
> >
> > and live http headers sees everything passing though link 'a' but not
> 'b'.
> > as i mentioned below you can place a proxy server at link b but i recon
> > there must be an easier way than this.
> >
> > > from daniel.haxx.se:
> > >I'm really not a PHP guy, but I believe recent PHP/CURL code allows you
> to
> > do
> > >something like this:
> > >       $headers = curl_getinfo($c, CURLINFO_HEADER_OUT);
> >
> > that sounded really promising but when i tried it no post variables show
> up
> > in the outgoing header :( eg:
> > <?php
> > $ch = curl_init();
> > curl_setopt($ch,CURLOPT_URL,"http://curl.haxx.se/");
> > curl_setopt($ch,CURLOPT_POST,1);
> > curl_setopt($ch,CURLOPT_POSTFIELDS,'post_variable=var1');
> > curl_setopt($ch,CURLOPT_RETURNTRANSFER,1);
> > curl_setopt($ch,CURLINFO_HEADER_OUT,1);
> > curl_exec($ch);
> > echo "outgoing headers:<br>".curl_getinfo($ch,CURLINFO_HEADER_OUT);
> > ?>
> >
> > even if you replace the last line in that script with:
> > echo "all curl info for this
> > transfer:<br>".print_r(curl_getinfo($ch),true);
> > it shows you all the info you can get from the curl transfer and the post
> > fields are not in there.
> >

>> hi,
> >> i would like to be able to see the outgoing post variables from my php
> >> curl
> >> script, is there any simple way to do this? the reason i ask is that
> there
> >> appears to be a discrpancy between the post variables i pass to curl
> with
> >>
> >> curl_setopt($ch,CURLOPT_POST,1);
> >> curl_setopt($ch,CURLOPT_POSTFIELDS,$post);
> >>
> >> and the post variables exiting curl as https.
> >>
> >> i've tried to observe the output myself by running everything though a
> >> proxy
> >> (webscarab), like so:
> >> curl_setopt($ch,CURLOPT_HTTPPROXYTUNNEL,0);
> >> curl_setopt($ch,CURLOPT_PROXY,"http://127.0.0.1:8008"); //webscarab
> >> operats
> >> on localhost (127.0.0.1), port 8008 by default
> >>
> >> this would work fine, except that im using https and i can't figure out
> >> how
> >> to get the certificate into the correct format (but that's beside the
> >> point
> >> of this message).
> >>
> >> so yeah the easiest thing would be if i could just view the outgoing
> post
> >> string. unfortunately neither     curl_setopt($ch,CURLOPT_VERBOSE,1);
> >>  or
> >> curl_setopt($ch,CURLOPT_HEADER,1);    show me the post string.
> >>
> >> any help would be much appreciated!
> >>
> >> Peter Miller
>

_______________________________________________
http://cool.haxx.se/cgi-bin/mailman/listinfo/curl-and-php
lmpx.com only provides a reader for public news (NNTP) servers. It is not affiliated with the servers or forums shown here and is not responsible for the content of articles, which is written by their respective authors.