Приветствую, подскажите уже просто голову сломал, сначало бился чтобы подцепить json с api btc-e ('https://btc-e.com/api/3/ticker/'), в итоге после долгих скитаний по просторам понял что надо мутить прокси, в итоге получилось как-то так:
<?php
function getSslPage($url) {
$ch = curl_init();
curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, FALSE);
curl_setopt($ch, CURLOPT_HEADER, false);
curl_setopt($ch, CURLOPT_FOLLOWLOCATION, true);
curl_setopt($ch, CURLOPT_URL, $url);
curl_setopt($ch, CURLOPT_REFERER, $url);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, TRUE);
$result = curl_exec($ch);
curl_close($ch);
return $result;
}
echo getSslPage('https://btc-e.com/api/3/ticker/'.$_GET['pair']);
?>
Таким образом я избавился от проклятой "No 'Access-Control-Allow-Origin' header is present on the requested resource."
После этого всё довольно успешно заработало на хосте где располагается - widget.cryptools.ru однако при попытке добавить его на другой домен, путём вписывания:
<script type="text/javascript" src="http://code.jquery.com/jquery.min.js"></script>
<script type="text/javascript" src="http://widget.cryptools.ru/widget.js"></script>
<script>
initCW('btc_usd-btc_rur-btc_eur-ltc_btc-ltc_usd-ltc_eur-ltc_rur-nmc_btc-nmc_usd-nvc_btc-nvc_usd-usd_rur-eur_usd-trc_btc-ppc_btc-ppc_usd-ftc_btc-xpm_btc');
</script>
так же где угодно добавить:
<div id="widget"></div>
Сам widget.js ('http://widget.cryptools.ru/widget.js'):
var switcher = 0;
var length = 0;
var setPair = '';
function initCW(pair) {
setPair = pair;
getCWData(setPair);
setInterval(function(event) {
update();
}, 10000);
}
function update() {
getCWData(setPair);
}
function getCWData(pair) {
$.getJSON('http://widget.cryptools.ru/proxy.php?pair=' + pair, function(data) {
var jsonData = $.map(data, function(val, key) {
return { currency: key, price: val };
});
drawCW(jsonData);
clicker();
});
}
function drawCW(data) {
var currency = data[switcher]['currency'].split('_');
length = data.length;
$('#widget').html('<div id="widget_block"><div id="widget_currency_0"></div><div id="widget_currency_1"></div><div id="widget_price_last"></div><div id="widget_price_high"></div><div id="widget_price_low"><a>LOW</a><br></div></div>');
$('#widget_currency_0').html(currency[0]);
$('#widget_currency_1').html(currency[1]);
$('#widget_price_last').html(data[switcher]['price']['last']);
$('#widget_price_high').html('<a>HIGH</a><br>' + data[switcher]['price']['high']);
$('#widget_price_low').html('<a>LOW</a><br>' + data[switcher]['price']['low']);
}
function clicker() {
$('#widget_block').click(function(){
if (switcher >= length-1) {
switcher = 0;
} else {
switcher++;
}
update();
});
}
Теперь при попытке встроить виджет на другом домене, получаю ту же ошибку что и раньше когда не было proxy.php
XMLHttpRequest cannot load http://widget.cryptools.ru/proxy.php?pair=btc_usd-btc_rur-btc_eur-ltc_btc-l…sd-nvc_btc-nvc_usd-usd_rur-eur_usd-trc_btc-ppc_btc-ppc_usd-ftc_btc-xpm_btc. No 'Access-Control-Allow-Origin' header is present on the requested resource. Origin 'http://btcalarm.com' is therefore not allowed access.
Вообщем голову уже сломал, может туплю в чём дико по незнанию...