jquery — XML-запрос wolframalpha API API

Я пытаюсь использовать API WolframAlpha через Javascript. Я не понимаю, почему следующий код возвращает мне пустое предупреждение. Я новичок в jQuery, но мне сказали, что это лучший метод для использования здесь.

<html>
  <head>
    <script src="jquery-2.1.1.min.js"></script>
  </head>
    <body>
        <script>
        $.get('http://api.wolframalpha.com/v2/query?appid=77P9PL-2QAWEY86WV&input=2x&format=image,plaintext', function(responseText) {
        alert(responseText);
        });
        </script>
    </body>
</html>

Большое спасибо за Вашу помощь


person el-flor    schedule 27.11.2014    source источник
comment
Вы должны использовать console.log(responseText) и просмотреть объект в консоли вашего браузера (F12)   -  person rottweilers_anonymous    schedule 27.11.2014


Ответы (1)


так что это страдает от механизма безопасности, называемого Cross Origin Scripting. Проблема здесь в том, что служба, из которой вы звоните, не дала вам разрешения на вызов этого ресурса в вызове ajax.

Чтобы узнать больше, посетите http://en.wikipedia.org/wiki/Cross-origin_resource_sharing

Чтобы убедиться, что это происходит, посмотрите на JS Fiddle: http://jsfiddle.net/dgohczvf/1/

Вы можете увидеть в консоли:

(index):1 XMLHttpRequest cannot load http://api.wolframalpha.com/v2/query?appid=77P9PL-2QAWEY86WV&input=2x&format=image,plaintext. 
No 'Access-Control-Allow-Origin' header is present on the requested resource. 
Origin 'http://fiddle.jshell.net' is therefore not allowed access.

В другом ответе здесь говорилось, что вам нужно вызвать этот сервер на сервер: проблема совместного использования источника

person Dave Walker    schedule 28.11.2014