2015-10-26 4 views
0

Так что я не знаю, как это сделать, но я хочу, чтобы получить JSON в этом URL, а затем добавить article.articleText к <div> с идентификатором выходаДоступ к JSON в URL

http://api.trove.nla.gov.au/newspaper/2184103?key=jja10ssv4950uh65&encoding=json&include=articletext

Изменить, чтобы показать, что я пробовал:

var apiKey = "jja10ssv4950uh65"; 
       $("#searchbtn").click(function(e) { 
        e.preventDefault(); 
        var searchTerm = getRandomVideo(); 
        var url = "http://api.trove.nla.gov.au/newspaper/" + searchTerm + "?key=" + apiKey + "&encoding=json&include=articletext" 

        $.getJSON(url, function(data) { 
         $('#output').empty(); 
         $("#output").append("<p>" + data.article.articleText +"</p>"); 
        }); 
       }); 
+2

является то, что ваш реальный ключ API? 0.o ... все разоблаченные и обнаженные для всех, чтобы увидеть ... – crushman

ответ

0

XMLHttpRequest не может загрузить http://api.trove.nla.gov.au/newspaper/2184103?key=jja10ssv4950uh65&encoding=json&include=articletext. На запрошенном ресурсе присутствует заголовок Access-Control-Allow-Origin. Следовательно, исходный «http://localhost» не допускается.

Для этого вам необходимо добавить заголовки в тело ответа, чтобы оно было доступно.

Альтернативное решение с использованием JSONP

var apiKey = "jja10ssv4950uh65"; 

$("#searchbtn").click(function(e) { 
    e.preventDefault(); 
    var searchTerm = getRandomVideo(); 
    var url = "http://api.trove.nla.gov.au/newspaper/" + searchTerm + "?key=" + apiKey + "&encoding=json&include=articletext"; 

    $.ajax({ 
     url: url, 
     dataType: 'JSONP', 
     jsonpCallback: 'callback', 
     type: 'GET', 
     success: function (data) { 
      $('#output').empty(); 
      console.log(data); 
      $("#output").append("<p>" + data.article.articleText +"</p>"); 
     } 
    }); 
}); 
Смежные вопросы