簡體   English   中英

返回字符串時,它會在字符串中添加額外的斜杠

[英]While returning the string it adds extra slash to the string

我正在編寫一個REST API,所有東西都設置好了,可以正常工作了。 我的控制器:

@RequestMapping(value = "/getDetails", method = RequestMethod.POST, produces = MediaType.APPLICATION_JSON_VALUE)
@ResponseBody
public String getDetails(@RequestBody String jsonInput) {
    LOGGER.info("<------------------------ from Date   :" + jsonInput );
    System.out.println("resp ="+apiService.getDetails(jsonInput));
    return apiService.getDetails(jsonInput);

}

當我在控制台上用sysout響應時,它將打印普通字符串,例如-

[{"name": "abc","vendor": "abc df"}]

但是我得到了額外的斜線。 所有雙引號均替換為\\“。

"[{\"name\":\"abc\",\"vendor\":\"abc df\"}]"

請幫忙 !。 提前致謝。

這是預料之中的,因此以后可以重建對象。 “ \\”轉引號。 您可以將“ \\”替換為空字符串:

@ResponseBody
public String getDetails(@RequestBody String jsonInput) {
    LOGGER.info("<------------------------ from Date   :" + jsonInput );
    System.out.println("resp ="+apiService.getBillingDetails(jsonInput));
    return apiService.getDetails(jsonInput).replace("\\", "");

}

采用

string ResponseString = Regex.Unescape(oldString);

這應該刪除所有不必要的轉義字符。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM