コンテンツ ネゴシエーションを使用して、HTTP サーバー上のリソースの HTML 表現と RDF/XML 表現の両方を提供しようとしています。サーバー側では、これは機能します。
curl -H "Accept: application/rdf+xml" http://localhost:8182/ontologies/1
正しいバージョンを取得します。JavaScript/Dojo でも同じことができます。
function downloadOntologyRDF(ontologyId) {
dojo.xhrGet( {
url:"${baseUrl}/ontologies/" + ontologyId,
headers: {"Accept": "application/rdf+xml"},
timeout: 5000,
load: function(response, ioArgs) {
var preNode = document.createElement("pre");
preNode.appendChild(document.createTextNode(response));
var foo = new dijit.Dialog({
title: "RDF",
content: preNode,
style: "overflow: auto;"
});
foo.show();
return response;
},
error: function(response, ioArgs) {
alert("Retrieving the RDF version failed: " + response);
return response;
}
});
}
ポップアップ ダイアログに結果が表示されます。私が立ち往生しているポイントは、このバージョンをダウンロードする方法をユーザーに提供することです。ブラウザーで RDF をページとして表示するか、保存ダイアログを直接開くページにリンクを設定したいと考えています。クエリ パラメータやその他のトリックに頼ることなく、これはまったく可能ですか?