curl命令在CQ中的特定节点的多值属性中添加值

时间:2015-07-03 11:39:55

标签: curl cq5 crx

我有一个特殊的节点:/ content / site / advisors / jcr:内容由一个属性" cq:允许的模板"其值由多个字符串值(字符串数组)组成。我想使用curl命令将另一个字符串值添加到其中。请提示。 enter image description here

2 个答案:

答案 0 :(得分:4)

Sling POST servlet使用@Patch后缀来添加或删除多值属性中的值,例如:

$ curl -u admin:admin -Fmulti@TypeHint="String[]" -Fmulti=one -Fmulti=two -Fmulti=four http://localhost:8080/test
$ curl -u admin:admin -Fmulti@Patch="true" -Fmulti="+three" -Fmulti="-four" http://localhost:8080/test

$ curl http://localhost:8080/test.tidy.json
{
  "jcr:primaryType": "nt:unstructured",
  "multi": [
    "one",
    "two",
    "three"
  ]
  }

文档位于https://sling.apache.org/documentation/bundles/manipulating-content-the-slingpostservlet-servlets-post.html#patch

答案 1 :(得分:3)

只需添加多个-Fproperty-name =“property-value”和其他TypeHint:

-Fproperty-name@TypeHint="String[]" -Fproperty-name="first property value" -Fproperty-name="second property value"等。