Created
December 12, 2016 14:32
-
-
Save clytras/9b1335f80da75160750a8ef9238cb56a to your computer and use it in GitHub Desktop.
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
<?php | |
// PHP Proxy example for Yahoo! Web services. | |
// Responds to both HTTP GET and POST requests | |
// | |
// Author: Jason Levitt | |
// December 7th, 2005 | |
// | |
// Allowed hostname (api.local and api.travel are also possible here) | |
define ('HOSTNAME', 'http://search.yahooapis.com/'); | |
// Get the REST call path from the AJAX application | |
// Is it a POST or a GET? | |
$path = ($_POST['yws_path']) ? $_POST['yws_path'] : $_GET['yws_path']; | |
$url = HOSTNAME.$path; | |
// Open the Curl session | |
$session = curl_init($url); | |
// If it's a POST, put the POST data in the body | |
if ($_POST['yws_path']) { | |
$postvars = ''; | |
while ($element = current($_POST)) { | |
$postvars .= urlencode(key($_POST)).'='.urlencode($element).'&'; | |
next($_POST); | |
} | |
curl_setopt ($session, CURLOPT_POST, true); | |
curl_setopt ($session, CURLOPT_POSTFIELDS, $postvars); | |
} | |
// Don't return HTTP headers. Do return the contents of the call | |
curl_setopt($session, CURLOPT_HEADER, false); | |
curl_setopt($session, CURLOPT_RETURNTRANSFER, true); | |
// Make the call | |
$xml = curl_exec($session); | |
// The web service returns XML. Set the Content-Type appropriately | |
header("Content-Type: text/xml"); | |
echo $xml; | |
curl_close($session); | |
?> |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment