Skip to content

Instantly share code, notes, and snippets.

@zmiftah
Forked from alkrauss48/request_forwarder.php
Last active August 29, 2015 14:17
Show Gist options
  • Save zmiftah/6a28968aa89107b7b653 to your computer and use it in GitHub Desktop.
Save zmiftah/6a28968aa89107b7b653 to your computer and use it in GitHub Desktop.
<?php
// Assuming a POST to this script in form of:
// request_forwarder?url=url_name
//
// This will convert a client side AJAX request to a server side PHP curl,
// thus eleminating worries of cross-site scripting and having to abide by
// cross-origin-request-sharing (CORS) settings on the end server.
$url = $_GET['url'];
$fields_string = '';
//url-ify the data for the POST
foreach($_POST as $key=>$value) {
$fields_string .= $key . '=' . $value . '&';
}
rtrim($fields_string, '&');
//open connection
$ch = curl_init();
//set the url, number of POST vars, POST data
curl_setopt($ch,CURLOPT_URL, $url);
curl_setopt($ch,CURLOPT_POST, count($_POST));
curl_setopt($ch,CURLOPT_POSTFIELDS, $fields_string);
//execute post
$result = curl_exec($ch);
//close connection
curl_close($ch);
?>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment