Stardog トリプル ストアから Angular にデータを取得しようとしていましたが、それを機能させるのに本当に苦労しています。まったく同じヘッダーとパラメーターを使用して、curl からサービスに問題なくアクセスできます。また、パラメーター部分を省略して、完全な URL ('localhost:5820/myDB/query?reasoning=false&query=SELECT * WHERE {?s ?p ?o}') を入力してみましたが、うまくいきませんでした。
private _queryUrl = 'http://localhost:5820/myDB/query';
constructor(private _http: Http) {}
getData() {
let username : string = 'admin';
let password : string = 'admin';
let headers = new Headers();
headers.append('Authorization', "Basic " + btoa(username + ":" + password));
headers.append('Content-Type', 'application/rdf+xml');
headers.append('Accept', 'application/sparql-results+json');
let params = new URLSearchParams();
params.set('reasoning', 'false');
params.set('query', 'SELECT * WHERE {?s ?p ?o}');
let options = new RequestOptions({ headers: headers, search: params });
return this._http
.get(this._queryUrl, options)
.map((res: Response) => res.json());
}