我有一個RestService,我正在返回一個JSON響應,如下所示。如何傳遞原始JSON作爲Restful服務的響應?
下面是我的代碼:
import javax.ws.rs.GET;
import javax.ws.rs.Path;
import javax.ws.rs.Produces;
@GET
@Path("/json/lime")
@Produces(MediaType.APPLICATION_JSON)
public DataResponse getData(@Context DataInfo info) {
// some code here
System.out.println(resp.getResponse());
return new DataResponse(resp.getResponse());
}
下面是實際的JSON響應我得到打我的RESTful服務後回:
{
"response": "{\"ABC\":100,\"PQR\":\"40\"}\n",
}
而這正是它從System.out的打印出來如上所示:
{"ABC":100,"PQR":"40"}
這是我的DataResponse
類:
public class DataResponse {
private String response;
public DataResponse(String response) {
this.response = response;
}
public String getResponse() {
return this.response;
}
}
正如你所看到的,我的response
字符串在上面的JSON中被越獄了。我不知道爲什麼?任何人都可以幫助我理解爲什麼會發生這種情況,以及如何解決它?
什麼是'resp'我沒有看到它在任何地方定義? – brso05
@ brso05這裏重要嗎? 'resp'是一個對象,我從中得到一個具有JSON響應的String:因此,'resp.getResponse()'返回一個JSON響應,根本沒有任何轉義。用更多細節更新了問題。 – john
你需要給我們更多像'DataResponse'類和'resp.getResponse()'返回的東西。 – brso05