通过plone.restapi插件返回错误查询plone,通过搜索获取​​今天的文件

时间:2019-05-02 16:20:28

标签: datetime request postman plone

我正在使用plone.restapi和邮递员发出GET请求,该请求应使用plone @search返回最后一天的文件。问题在于,当它发送请求时,我在需要数据的查询中遇到错误,并且我返回以下表示错误的JSON。我还尝试使用时区以所有不同的格式写日期,但结果始终是相同的。有人知道怎么做吗?

这是我的网址:http://192.168.197.28:8080/docrai-cms/@search?advanced_search=False&sort_on=&sort_order=&SearchableText=pdf&advanced_search=True&portal_type%3Alist=File&created.query%3Arecord%3Alist%3Adate=2019%2F05%2F01&created.range%3Arecord=min

这是有效的浏览器URL:http://192.168.197.28:8080/docrai-cms/@@search?advanced_search=False&sort_on=&sort_order=&SearchableText=pdf&advanced_search=True&portal_type%3Alist=File&created.query%3Arecord%3Alist%3Adate=2019%2F05%2F01&created.range%3Arecord=min

这些是所附的照片: enter image description here enter image description here

1 个答案:

答案 0 :(得分:0)

根据docs

  

datetime类型将被序列化为ISO 8601日期字符串

应该为2019-05-01,不能像您使用URI编码形式/一样使用斜杠%2F

此方法使用curl进行请求:

curl -i "localhost:8080/Plone/@search?created.query=2019-05-09&created.range=min" -H "Accept: application/json"

这将返回在指定日期或之后创建的所有项目。

要请求一个日期范围,可以做到(仅显示简短查询):

?created.query=2019-05-09T08:00:00&created.query=2019-05-09T20:00:00&created.range=min:max

这将返回在当天上午8点至晚上8点之间创建的所有项目。