如何直接从浏览器使用外部Sparql请求的json输出?

时间:2011-08-23 15:33:49

标签: jquery json sparql

假设我想要从Dbpedia sparql endpoint http://dbpedia.org/sparql

生成json文件

现在我只是发出请求,它会自动将json文件下载到我的磁盘上,并在本地使用它。

如何直接从端点使用json?例如,如何在我的代码中自己输入请求而不是输入本地保存的json文件?

更具体的是,我要求费德勒统计数据:

select * where {<http://dbpedia.org/resource/Roger_Federer> ?p ?o filter(lang(?o) = 'en')}

将输出保存为winner.json并使用以下方式获取:

$.getJSON('json/winner.json', function(json) {
  for(var i = 0; i < json["results"]["bindings"].length; i++) {
    $('#winner').append(json["results"]["bindings"][i]["o"].value + '<br /><br />');
  };
});

我希望能够使用我的脚本直接从服务器获取json。

我是否需要使用HTML接受标题或其他内容?感谢任何提示。

1 个答案:

答案 0 :(得分:10)

只是做:

 $.getJSON("http://dbpedia.org/sparql?default-graph-uri=http%3A%2F%2Fdbpedia.org&query=select+*+where+%7B%3Chttp%3A%2F%2Fdbpedia.org%2Fresource%2FRoger_Federer%3E+%3Fp+%3Fo+filter%28lang%28%3Fo%29+%3D+%27en%27%29%7D%0D%0A&debug=on&timeout=&format=application%2Fsparql-results%2Bjson&save=display&fname=",
  {},
  function(data) {
     console.log('data = ', data);
  });