我有一个JAX-RS服务,它返回多个“链接”标题:
Expires=Thu, 01 Jan 1970 01:00:00 CET
Link=http://localhost:7080/rest/resource?ps=2&category=service&page=2; rel='next'
Link=http://localhost:7080/rest/resource?page=1&ps=2&category=service; rel='current'
Content-Encoding=gzip
现在我要验证是否存在与rel = next和另一个具有rel = current的链接,但没有rel = prev
写作时
expect()
.header("Link", containsString("page=2"))
.header("Link", containsString("current"))
.header("Link", not(containsString("prev")))
然后第二行确认失败,因为上面的第一个Link标题行不包含'current'
运行这些检查的正确方法是什么?
答案 0 :(得分:2)
我不认为你可以以这种方式做到这一点(因为REST Assured只返回第一个标题值)。解决方法是:
List<Header> listHeaders = get("/your_resource").headers().getList("Link");
现在,您可以使用普通的JUnit断言(或类似的东西)来断言每个标头值。