【问题标题】:How to POST SPARQL to Virtuoso?如何将 SPARQL 发布到 Virtuoso?
【发布时间】:2016-12-01 21:18:46
【问题描述】:

我正在使用两个不同的HTTP POST 实用程序(Firefox 中的poster 以及Python requests API)发布一个简单的SPARQL 插入到Virtuoso

我的网址是:http://localhost:8890/sparql

我的请求参数是:

default-graph-uri: <MY_GRAPH>
should-sponge: soft
debug: on
timeout: 
format: application/xml
save: display
fname: 

我将实际的 SPARQL (INSERT DATA { GRAPH...) 放在消息的内容中。

我尝试了不同的内容类型,但都没有奏效。我确实得到了 200,但是即使上面的参数集指定了application/xml,响应也是 HTML 格式的,但是没有插入数据。当我尝试 text/turtle 的内容类型时,我得到 409 Invalid Path,这也在 this post 中被引用。

我可以成功执行HTTP GET,但是,出于性能原因,我希望超过有效负载长度限制。与 GET 的唯一区别是,SPARQL 位于query 参数下的 URL 中,而 POST 应该在消息内容中启用更大的有效负载,通过在同一请求中包含多个三元组,而不是只有一个(我有 100 的 1000 的插入)。我试图关注this documentation page

【问题讨论】:

  • 您可以在此处继续发帖,但值得注意的是,在 Virtuoso Users mailing listOpenLink Support Case 上通常会更快、更准确地回答 Virtuoso 特定的问题。
  • 我明白,但去不同的专业留言板不太实用
  • 上面写着here,如果我有“我怎么……?”问题,“发布到 Stack Overflow 或 Quora!”
  • 你是对的! what-goes-where 将被编辑以包含正文中的内容,即“Virtuoso Users mailing list 也仍然处于活动状态。”

标签: post sparql virtuoso


【解决方案1】:

几天前我在这个问题上停下来,试图用curl 达到同样的效果。由于它是浏览器扩展的强大(且更方便)替代方案,因此最终证明是成功的公式如下:

curl -X POST \
     -H "Content-Type:application/sparql-update" \
     -H "Accept:text/html" \
     --data "select distinct ?Concept where {[] a ?Concept} LIMIT 100" http://localhost:8890/sparql

有关this thread 中标题的更多详细信息。

【讨论】:

    【解决方案2】:

    这个“问题”有很多方面,因此很难提供适合本网站的简单答案。这是我建议使用邮件列表的原因之一,它更适合对话和/或多方面的帮助。

    • 您是否尝试过像我们大多数示例一样使用curl

    • 1234563 - 目前尚不清楚您是否在测试中这样做了。在project page上,我还注意到它的last commit是2012年的,还有a great many open issues
    • 我对 Python 完全不熟悉,所以我没有深入了解。

    • 您是否尝试过设置Accept: 标头?这会对服务器返回的内容产生重大影响。

    • 1234563 /li>
    • virtuoso-users post you referenced 和这个问题都没有足够的细节来分析409 Invalid Path 错误的原因。允许我们重现此结果的显式细节会很有帮助,最好是在一个不同的线程中。

    【讨论】:

    • “方面”并不多,问题很简单:如何使 POST 工作。你所说的方面是描述我的尝试的参数
    • 一个工作的“hello world”用于向大师发布数据会有所帮助,但无处可寻
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多