Вот моя ситуация.
mydomain.com хочет получить удаленный JSON от remotedomain.com
mydomain.com имеет ключ API, предоставленный remotedomain.com
с mydomain.com, в html / php это работает, я вижу json:
<a href="http://remotedomain.com?data=xx&key=xx&action=json">Get the Json</a>
По той же ссылке из chrome o любая другая навигация не работает (ошибка неверного ключа). Это правильно.
ПРОБЛЕМА, я не могу показаться, что json с php (ошибка 403) или js (ошибка передачи MIME).
Я пробовал JSONP, Curl, fopen, .ajax get, file_get_contents и т. Д.
Исчезают идеи. ПОМОГИТЕ
Вы можете запросить API и протестировать его самостоятельно.
http://www.idealista.com/labs/api.htm
Api Doc http://www.idealista.com/labs/api.htm?action=help#json
Это объясняется очень хорошо и должно работать. Поэтому я не знаю, что я делаю неправильно.
Я пытался. Это образец JSON, с.
function get_data($url) {
$ch = curl_init();
$timeout = 5;
curl_setopt($ch, CURLOPT_URL, $url);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
curl_setopt($ch, CURLOPT_CONNECTTIMEOUT, $timeout);
$userAgent = 'Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.1; .NET CLR 1.1.4322)';
curl_setopt($ch, CURLOPT_USERAGENT, $userAgent);
curl_setopt($ch, CURLOPT_FAILONERROR, true);
curl_setopt($ch, CURLOPT_FOLLOWLOCATION, true);
curl_setopt($ch, CURLOPT_AUTOREFERER, true);
curl_setopt($ch, CURLOPT_TIMEOUT, 10);
$data = curl_exec($ch);
curl_close($ch);
return $data;
}
$ return_content = get_data (‘https://btc-e.com/api/2/btc_usd/ticker«)
Также
var app = 'https://btc-e.com/api/2/btc_usd/ticker';
$.ajax({
url: app,
async: false,
dataType: "jsonp",
jsonp: "jsoncallback",
type:"GET",
success: function(html){
console.log($(html));
},
error: function(){
}
});
На самом деле
https://jsonp.nodejitsu.com/
самый близкий мне удалось получить его
Это всего лишь образец JSON. Настоящий JSON можно увидеть только с помощью ключа API
Задача ещё не решена.
Других решений пока нет …