在使用 Rest Assured 时,我很难处理查询参数值中的特殊字符。
在 url 中(如下所示),我必须传递用管道符号“|”分隔的值。我用值 %7C 对符号进行了编码,但是服务调用不提供匹配响应而是返回默认响应。
http://localhost:8080/api/abc?Id=7325860 %7CXYZ
有趣的是相同的 url 可以在任何浏览器 rest 客户端或其他基于 java 的解决方案中正常工作。
最佳答案
默认情况下,REST Assured 对查询参数执行 URL 编码。你可以很容易地禁用它:
given().urlEncodingEnabled(false).when().get("http://localhost:8080/api/abc?Id=7325860%7CXYZ");
参见 documentation了解更多信息。
关于java - 如何在放心中处理查询参数值中的特殊字符,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/38717475/