Получение данных JSON из API

Я пытаюсь заставить очень простой Stock API работать на JSFiddle.net, используя Quandl API: https://www.quandl.com/blog/api-for-stock-data

Если я использую текущий формат ".csv", как показано ниже, мне возвращается файл CSV. Если я изменю формат на ".json" в своем API, как мне восстановить данные, чтобы я мог использовать их, например, на веб-сайте?

Я считаю, что мне нужно использовать команду getJSON, но я не понимаю, как она работает. Кто-нибудь может мне помочь?

HTML:

<input type="text" id="symbol">
<button id="getPrice">Get Price!</button>
<div id="result">Stock Market Ticker</div>

JavaScript:

function getPrice() {
  var symbol = $("#symbol").val();

  var baseurl = "https://www.quandl.com/api/v3/datasets/WIKI/";
  var stock = symbol+".csv";
  var endurl = "column_index=4&rows=1&api_key='8mii36sd1q46uLgSTkLm";
  var url = baseurl+ stock + "?" + endurl;

  $("#result ").html("<a href = '" + url + "' >Hyperlink</a>");

}

$("#getPrice ").click(getPrice);

Мой ВЫВОД с использованием биржевого тикера KORS (файл .CSV): Дата закрытия 05.01.2016 40,72


person NJDS    schedule 06.01.2016    source источник
comment
То, что вы пытаетесь сделать, вероятно, потребует наличия прокси-сервера.   -  person Pointy    schedule 06.01.2016


Ответы (1)


Недавно я ответил на "Как использовать Quandl API?" со следующим фрагментом, который вы должны адаптировать для ваш JSON:

var baseurl = "https://www.quandl.com/api/v3/datasets/WIKI/";
var endurl = "column_index=4&rows=1&api_key='8mii36sd1q46uLgSTkLm";
var quandlcode = "KORS"; // if is it's your choice?
var url = baseurl + quandlcode + ".json?" + endurl; // dont forget the "?"
var xhr = new XMLHttpRequest();
xhr.open("GET", url, true);
xhr.setRequestHeader("Content-Type", "application/json");
xhr.onload = function() {
    var data = JSON.parse(this.responseText).dataset.data;
    // {}.dataset.data is the data matrix in Quandl
    // for most datasets as far as I know ...
    // then process your own way
}
xhr.send();
person allez l'OM    schedule 06.02.2017