我正在运行一个独立的单用户 v5 Node Solid Server。当我以该单个用户身份登录时,我可以在一个不存在的容器中创建一个文档,并且服务器会为我创建容器。
例如
POST https://my.server:8443/network/001/call/call-001
@prefix c0: <http://example.org/foo/call#> .
@prefix foo: <http://example.org/foo/> .
<https://my.server:8443/network/001/call/call-0001>
a foo:call;
c0:caller "401-555-0001";
c0:created "2019-05-02T19:54:10.007Z";
c0:id "call-0001";
c0:network-id "001";
c0:receiver "555-555-0002";
c0:updated "2019-05-02T19:54:10.007Z” .
当我将它发布到我自己的单用户服务器时,容器/network/001/call
不存在,它会为我创建它。但是当我将它发布到一个 Inrupt 服务器(我拥有 POD,但不是服务器,并且它不是单用户模式)时,我收到一个错误:
500:补丁后写入文件失败:错误:ENOENT:没有这样的文件或目录,打开'/var/solid/user.inrupt.net/network/001/call/call-001'
所以 - 我很好奇为什么它在一种情况下创建容器而不是另一种情况,但我认为短期内的答案也是我应该在将东西放入容器之前明确创建容器。不幸的是,目前面向任务的文档似乎有点缺乏,因此这个问题的标题是 - 如何POST ...
在 SoLiD 服务器上创建容器(?)?