我目前正在一个项目上,我无法弄清楚如何从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是什么,但仍然不知道如何克服这一障碍。
在我的工作中应该采用哪种方法来实现此服务?