2015-11-13 15 views
3

我想提出一个GET调用下表Socrata/SODA API调用: https://data.cityofnewyork.us/Social-Services/Halloween-Noise-Lat-Long/25yv-wyir通过JQuery不返回整个数据集

它有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

+0

我不知道 - 这很神秘。通过Web界面执行“导出”(到JSON)会提供一个包含所有记录的数据集(不同格式)。我认为这可能是分页问题,​​但似乎不是。您可以看到,纬度为'40 .70211598279333'的记录不存在于API JSON中,但我看不到任何理由。 –

回答

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

让我知道是否适合你更好!