Автоматизация запросов SPARQL на конечной точке MusicBrainz - PullRequest
0 голосов
/ 28 августа 2018

В настоящее время я работаю над проектом и не могу понять, как извлечь данные (например, имя исполнителя / песни / альбома) из 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, но все еще не понимаю, как преодолеть это препятствие.

Какой подход я должен придерживаться, чтобы внедрить этот сервис в мою работу?

...