2016-08-02 62 views
2

我在处理Rest Assured时处理查询参数值中的特殊字符时非常努力。如何处理查询参数值中的特殊字符放心使用

在url中(如下所示),我必须传递用管道符号'|'分隔的值。我使用%7C编码符号,但服务调用不会给出匹配的响应,而是返回默认响应。

http://localhost:8080/api/abc?Id=7325860%7C XYZ

有趣的部分是相同的URL正常工作与任何浏览器的客户休息或其它基于Java的解决方案。

回答

7

REST Assured默认为查询参数执行URL编码。您可以轻松禁用它:

given().urlEncodingEnabled(false).when().get("http://localhost:8080/api/abc?Id=7325860%7CXYZ"); 

有关更多信息,请参见documentation