我正在尝试通过 cURL 使用 http PUT 来更新我在 openrdf-sesame 中的三重存储,但是我遇到了一个我找不到解决方案的问题。
使用 POST 时,三重数据完美上传。
但随后使用 PUT,而不是添加提供的数据,它会从我的存储库中删除所有数据。我在详细模式下运行了 cURL,它返回了预期的 HTTP 状态代码。
我已经添加
<init-param>
<param-name>readonly</param-name>
<param-value>false</param-value>
</init-param>
对于 Apache Tomcat 的 web.xml,我也尝试过这里的指南:HTTP PUT Guide,但这也没有帮助。
编辑 这是我的批处理文件中的 cURL 命令:
call "%curl%" -# -X POST %endpoint%/statements -H "Content-Type:application/x-trig;charset=UTF-8" -d @%%X
call "%curl%" -# -X PUT %endpoint%/statements -H "Content-Type:application/x-trig;charset=UTF-8" -d @%%X
本质上是:
curl.exe -# -X POST http://myendpoint/statements -H "Content-Type:application/x-trig;charset=UTF-8" -d @MyTrigFile.trig
curl.exe -# -X PUT http://myendpoint/statements -H "Content-Type:application/x-trig;charset=UTF-8" -d @MyTrigFile.trig
目前,我已经禁用了身份验证,否则我也会包含一个-u user:password
参数。