我想获取我的目录中的所有文件 json 以进行搜索。
$('#get-data').click(function () {
var showData = $('#show-data');
$.getJSON('/data/**all files json**', function (data) {
console.log(data);
var items = data.items.map(function (item) {
return item.key + ': ' + item.value;
});
showData.empty();
if (items.length) {
var content = '<li>' + items.join('</li><li>') + '</li>';
var list = $('<ul />').html(content);
showData.append(list);
}
});
showData.html(data);
});
你认为有可能吗?还是我需要使用其他方法?
谢谢
最佳答案
您无法发出通配符 AJAX 请求来返回服务器上所有可能的 JSON 文件。您需要提前知道您将请求发送到的确切端点。否则,如果所有客户端都可以提前知道服务器上有哪些文件,这将是一个安全漏洞。
因此,一种可能的策略是在您的服务器上有一些 /describe
端点,它将返回所有可用 JSON 文件的列表。然后客户端将首先向该端点发出 AJAX 请求,然后对于列表中每个返回的端点,它将发出单独的 AJAX 请求:
$.getJSON('/data/discover', function (data) {
// suppose that data looks like this:
// ["/data/a.json", "/data/b.json", "/data/c.json"]
for (var i := 0; i < data.length; i++) {
// send an AJAX request to each individual JSON file
// available on the server as returned by the discover endpoint
$.getJSON(data[i], function (result) {
...
});
}
});
关于javascript - 获取json目录下的所有文件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/41666083/