通过JQuery调用Socrata / SODA API不返回整个数据集

时间:2015-11-13 01:56:17

标签: jquery api leaflet socrata opendata

我正在对下表进行GET调用: https://data.cityofnewyork.us/Social-Services/Halloween-Noise-Lat-Long/25yv-wyir

它有715个条目。

然而,当我进行GET调用时,它只返回463个条目。

var map = L.map('map').setView([40.7518685, -73.984857], 11);

L.tileLayer('http://{s}.basemaps.cartocdn.com/light_all/{z}/{x}/{y}.png', {
    attribution: '&copy; <a href="http://www.openstreetmap.org/copyright">OpenStreetMap</a> &copy; <a href="http://cartodb.com/attributions">CartoDB</a>',
    subdomains: 'abcd',
    maxZoom: 19})
    .addTo(map);


var halloweenData = "https://data.cityofnewyork.us/resource/25yv-wyir.json?";
$.getJSON(halloweenData, function(data) {
    for (var i = 0; i < data.length; i++){
        var m = L.circleMarker(new L.LatLng(data[i].latitude, data[i].longitude)).setRadius(4).addTo(map).bindPopup(data[i].created_date);
    }
})
console.log(halloweenData);

是否有人熟悉Socrata / SODA API来解释并帮助我纠正这种差异?我正在使用jquery和leaflet.js

1 个答案:

答案 0 :(得分:2)

看起来该数据集的导出方式可能存在错误,我们的工程师正在看一看。

与此同时,我建议您查看SODA API for that dataset,因为您可能对这些结果感到满意。

我将该过滤器复制为SoQL query,并得到正确的715计数:

https://data.cityofnewyork.us/resource/fhrw-4uyv.json?descriptor=Loud Music/Party&$where=UPPER(city) NOT LIKE "%STATEN%" AND created_date BETWEEN '2015-10-29T17:00:00' AND '2015-11-01T08:00:00'

示例:https://www.runscope.com/public/bff63de8-1862-45a9-888d-2b10741eacfa/b76280f5-0865-4beb-b05b-9808d5acbcef

请告诉我这是否适合您!