持久性API文档说:
当使用GET、PUT和DELETE来处理资源时,HTTP请求的主体只包含要处理的资源。
这似乎表明POST不是受支持的操作。文档只提到GET、PUT和DELETE。
我在其他地方读到过(我不记得在哪里),可以发到:
http://[SERVER]/orbeon/fr/[APP_NAME]/[FORM_NAME]/new
我已经测试过这一点,它可以工作,但这不是使用REST。它返回一个供用户开始编辑表单数据的页面。这不是我要找的。我本来希望能写一篇文章
http://[SERVER]/orbeon/fr/service/persistence/crud/[APP_NAME]/[FORM_NAME]/data/
新创建的表单数据(包括其文档ID)的位置将在响应的Location头中返回。但是,执行POST将返回一个500错误。堆栈跟踪似乎表示某种类型的验证异常。这不支持吗?
发布于 2015-06-04 00:48:20
没错,persistence不支持POST,但是您支持可以发布到/new页面,这是两个非常不同的东西。
因此,如果您想直接调用persistence API,并且希望创建一个新文档,那么您需要“选择”一个文档id。您可以使用相同的代码表单Runner调用:secure:randomHexId(),在SecureUtils.scala中实现。
https://stackoverflow.com/questions/30632135
复制相似问题