Thanks for the responses. Very helpful. I decided to go with a proxy approach for which I found a simple solution here: http://www.paulund.co.uk/make-cross-domain-ajax-calls-with-jquery-and-php
For cut and paste simplicity I've added my code here.
I created a file called crossdomain.html. Included jquery library. Created the following Javascript function:
function requestDataByProxy()
{
var url = "http://UrlYouWantToAcccess.html";
var data = "url=" + url + "¶meters=1¶=2";
$.ajax({
url: "our_domain_url.php",
data: data,
type: "POST",
success: function(data, textStatus, jqXHR){
console.log('Success ' + data);
$('#jsonData').html(data);
},
error: function (jqXHR, textStatus, errorThrown){
console.log('Error ' + jqXHR);
}
});
}
I also added a simple button and pre tag in HTML to load results:
Request Data By Proxy
Requsted Data
And then, the PHP file our_domain_url.php which uses cURL (make sure you have this enabled!)
//set POST variables
$url = $_POST['url'];
unset($_POST['url']);
$fields_string = "";
//url-ify the data for the POST
foreach($_POST as $key=>$value) {
$fields_string .= $key.'='.$value.'&';
}
$fields_string = 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);
?>
To me, this was a fairly straight-forward solution.
Hope this helps someone else!
Rob