0

我目前正在做一个项目,但我无法弄清楚如何从 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 是什么,但我仍然不知道如何克服这个障碍。

为了在我的工作中实施这项服务,我应该采用什么方法?

4

0 回答 0