Я думаю, что код прав, но я не получаю никакого ответа в своем втором предупреждении. Когда я перехожу на сайт, указанный в первом предупреждении, я получаю текст, который я хочу. Почему это не работает?Текст ответа AJAX
<script type="text/javascript">
function getimages(q) {
bossimagesrequest = new XMLHttpRequest;
var requri = "http://boss.yahooapis.com/ysearch/images/v1/"+escape(q)+"?appid=yahoobosskey&filter=true&count=10";
bossimagesrequest.open("GET", requri, true);
bossimagesrequest.onreadystatechange = function() {
if (bossimagesrequest.readyState === 4) {
alert(requri);
alert(bossimagesrequest.responseText);
}
};
bossimagesrequest.send();
}
</script>
Я заменил «yahoobosskey» своим ключом API, так что это не проблема.
Так что я не могу использовать Yahoo BOSS с AJAX? Я думаю, что было бы глупо, если Yahoo заблокировал другие серверы от BOSS, потому что тогда вам нужно очень много обойти блок. Разве я не должен использовать AJAX для Yahoo BOSS? – icant
@ user376919: Политика одного и того же происхождения блокирует все, что не происходит из того же домена веб-документа. Даже другой номер порта не разрешен. У меня нет опыта работы с BOSS Yahoo, но вы можете проверить, обслуживается ли служба [JSONP] (http://en.wikipedia.org/wiki/JSON#JSONP). В противном случае вы можете проверить методы, описанные в сообщении SO, с которым я связан. –
... Например, я заметил, что [Yahoo Search API] (http://developer.yahoo.com/common/json.html#callbackparam) служит JSONP. Он описывается как JSON с использованием обратного вызова. –