菜鸟:解析 API 数据并输出一项


NOOB: Parse API data and output one item

为这个问题如此简单而道歉。

我有来自Citymapper API的链接:

https://developer.citymapper.com/api/1/traveltime/?startcoord=51.513895%2C+0.021222&endcoord=51.524006%2C+-0.115490&key=8b3e89fd32441463296274661805caba

当我将浏览器指向那里时,它会给我:

{"travel_time_minutes": 51, "诊断": {"毫秒": 3036}}

我试图从中抽出一个项目:"51"。

然后我想在 html 网页上显示它说:"51 分钟工作"

我知道这很简单,但我只是无法制定任何有关如何处理此问题的文档。

你可以为此使用 jQuery $.ajax函数。

var url = 'https://developer.citymapper.com/api/1/traveltime/?startcoord=51.513895%2C+0.021222&endcoord=51.524006%2C+-0.115490&key=8b3e89fd32441463296274661805caba';
$.ajax({
  method: 'GET',
  url: url,
  dataType: 'jsonp',    
  crossDomain: true,
  success: function(data){
    $('.data').html(data.travel_time_minutes + ' minutes to work');
  }        
});
<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.11.0/jquery.min.js"></script>
<div class="data"></div>

试试这个:

JavaScript:

$.get('https://developer.citymapper.com/api/1/traveltime/?startcoord=51.513895%2C+0.021222&endcoord=51.524006%2C+-0.115490&key=8b3e89fd32441463296274661805caba').done(function(data) {
    $('#ElementToDisplayIn').html(data.travel_time_minutes+' minutes to work.');
});

由于您已经用jQuery标记了问题,因此我正在使用jQuery的$.get方法。你正在使用的 API 正在吐回 JSON,jQuery 会自动为你转换为 JavaScript 对象。

请求成功后,我将 id ElementToDisplayIn元素的 html 设置为您请求的字符串。 变量 data 是从 API 返回的内容,其中包含来自那里的所有信息。

例如,要访问毫秒,我可以做data.diagnostic.milliseconds在您的示例中会吐回3036

希望这能让你开始!