java - 如何在放心中处理查询参数值中的特殊字符

标签 java arrays json deserialization rest-assured

在使用 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/

相关文章:

java - 单击另一个单元格时更改单元格背景

java - 无法在 ucanaccess 中执行更新语句

json - Spark : Use JsonSchema to parse Json into DataFrame

python - 使用 Python 抓取新闻网站

java - this 在类定义中的用法

java - 嵌套 EL 函数

javascript - 访问从异步函数更新的全局变量

android - 我可以通过数组定义多个 LinearLayouts 吗?

javascript - 如何找到数组最小值的id?

javascript - 使用 postman Express 发送带有原始 json 的 POST 数据