在MusicBrainz端点上自动执行SPARQL查询

时间:2018-08-28 15:45:18

标签: javascript sparql musicbrainz

我目前正在一个项目上,我无法弄清楚如何从MusicBrainz中检索数据(例如,提供艺术家/歌曲/专辑名称)。

更具体

我的最终目标是拥有与该脚本兼容的DBPedia脚本:

    function myQuery(artist,title) {
    var DBP = "http://dbpedia.org/sparql";
    var query = [
       "SELECT DISTINCT ?abstract WHERE {",
        "?artist foaf:name \"" + artist +"\"@en .",
        "?title a dbo:Song ;",
            "dbo:artist ?artist ;",
            "foaf:name \"" + title +"\"@en ;",
            "dbo:abstract ?abstract .",

        "FILTER (langMatches(lang(?abstract),\"it\")) }" ].join(" ");

    var queryURL = DBP + "?query=" + encodeURIComponent(query) + "&format=json" ;
    return queryURL;
    }

myQuery()函数中调用sendQuery()函数,该函数基本上创建一个xhttp对象,并对生成的字符串使用GET方法。

运行HTTP请求后,我得到一个带有所需结果的JSON文件。

在MusicBrainz SPARQL端点上遵循相同的路径只会给我一个错误:

  

请求的请求上没有'Access-Control-Allow-Origin'标头   资源。

我了解CORS是什么,但仍然不知道如何克服这一障碍。

在我的工作中应该采用哪种方法来实现此服务?

0 个答案:

没有答案