whomba Posted November 7, 2007 Share Posted November 7, 2007 Hello there All, I have just started playing with cURL and it seems to be pretty awesome. I was wondering however if any of you might be able to lend a helping hand with something. I am trying to build a client Library for ActionScript 3 to access Googles Calendar API. Because of a combination of Flash Player sand box issues, and adobe documentation being incorrect ::sigh:: this is impossible without building some sort of proxy server. This is Where PHP comes in. I am looking to build a PHP script (or series of scripts) that take in information (POST, GET, PUT, etc) and 'pushes' it off to the google server, then gets the response from the google server (along with the headers). I have been able to get the contents of the page back, but thats about it. Any help would be extremly appreciated. Thanks! -Andrew Below is the code that i am currently using to do most of my work for me. //parts of this code was taken from Ojas Ojasvi from http://us2.php.net/manual/en/ref.curl.php function sendFakeRequest($url, $data = null, $header = null){ $curl = curl_init(); // Setup headers - I used the same headers from Firefox version 2.0.0.6 // below was split up because php.net said the line was too long. :/ $header[] = "Accept: text/xml,application/xml,application/xhtml+xml,text/html;q=0.9,text/plain;q=0.8,image/png,*/*;q=0.5"; $header[] = "Cache-Control: max-age=0"; $header[] = "Connection: keep-alive"; $header[] = "Keep-Alive: 300"; $header[] = "Accept-Charset: ISO-8859-1,utf-8;q=0.7,*;q=0.7"; $header[] = "Accept-Language: en-us,en;q=0.5"; $header[] = "Pragma: "; // browsers keep this blank. var_dump($header); //die(); if (!is_null($data)){ $header[] = "Content-length: ".strlen($data); curl_setopt($curl, CURLOPT_POSTFIELDS, $data); } curl_setopt($curl, CURLOPT_URL, $url); curl_setopt($curl, CURLOPT_USERAGENT, 'Googlebot/2.1 (+http://www.google.com/bot.html)'); curl_setopt($curl, CURLOPT_HTTPHEADER, $header); curl_setopt($curl, CURLOPT_REFERER, 'http://www.google.com'); curl_setopt($curl, CURLOPT_ENCODING, 'gzip,deflate'); curl_setopt($curl, CURLOPT_AUTOREFERER, true); curl_setopt($curl, CURLOPT_RETURNTRANSFER, 1); curl_setopt($curl, CURLOPT_TIMEOUT, 10); $html = curl_exec($curl); // execute the curl command curl_close($curl); // close the connection return $html; // and finally, return $html } Quote Link to comment Share on other sites More sharing options...
Recommended Posts
Join the conversation
You can post now and register later. If you have an account, sign in now to post with your account.