我正在使用 Java 的 Rest Assured 框架,我有一个场景来传递以 "\ip oldName" 开头的共享路径。
JSONObject data = new JSONObject();
data.put("name", ReadInputFile.caseName);
data.put("projectFolderPath", ReadInputFile.casePath);
data.put("responsiveFilePath", ReadInputFile.jobPath);
System.out.println("Input data : " + data);
仅供参考,ReadInputFile.casePath 和 ReadInputFile.jobPath 的格式为 "\\ip\folderName".
当我打印它时,由于转义字符而跳过了一个反斜杠,并得到了预期的格式为“\ ip oldName”。
但是当我在下面的代码中传递它时,我得到的结果为"\\ip\folderName"
RequestSpecification res2 = RestAssured.given().log().all().baseUri(ReadInputFile.url).cookies(cook)
.contentType("application/json").body(data);
然后我尝试像这样使用“\ ip \folderName”,打印时的输出是“\ ipfolderName”,当我在res2中以相同的格式使用它时,我得到的输出为“ \ipfolderName"
最后,我希望结果应该是"\ip oldName"
如果打印 ReadInputFile.casePath 它应该打印 6 个斜杠:
System.out.println(ReadInputFile.casePath) //Prints "\\\\ip\\folderName"
如果打印文字“\ip oldName”,斜杠将被视为转义字符:
System.out.println("\\\\ip\\folderName") //Prints "\\ip\folderName"
顺便说一句。这与 Rest 或 JSON 无关 - 这只是转义字符的工作原理。