私はJSONを使用して、サーバーからのオブジェクトの配列を取得しようとしています。オブジェクトの配列から「を削除する方法
サーバーは私に次の文字列を送信します。
"document" : "{\"bc\": {\n \"b\": {\n \"t\": 1,\n \"r\": 1,\n \"c\": \"none\",\n \"ipad\": \"Y\",\n \"n\": \"Table of Contents\",\n \"o\": 1,\n \"l\": \"en_US\",\n \"i\": 1000013253\n },\n \"i\": \"CM19014269\"\n}}"
この応答\ "すべての代わりに\"が含まれています。\ "は必要ありません。私が望むのは単純なJSONレスポンスだけです。どんな助けでも大歓迎です。
私のコード: - basketsToc.add(basketsInfoTO);
と正しい応答を得る -
for (ManageBasketTO manageBasketTO: retList) {
Long basketId = manageBasketTO.getBasketID();
BasketTO basketTo = null;
basketTo = CommonUtil.getBasket(usrCtxtObj, basketId, language, EBookConstants.FOR_VIEWER_INTERFACE,
usrCtxtObj.getScenarioID(), EBookConstants.YES, request, deviceType);
String doc = Utilities.getStringFromDocument(basketTo.getdocument());
doc = doc.replace("<?xml version=\"1.0\" encoding=\"UTF-8\"?>", "");
doc = doc.replace("<?xml version=\"1.0\" encoding=\"UTF-8\" standalone=\"no\"?>", "");
doc = doc.trim();
JSONObject object = XML.toJSONObject(doc);
doc = object.toString(4);
BasketsInfoTO basketsInfoTO = new BasketsInfoTO(doc);
basketsToc.add(basketsInfoTO);
}
basketInfoRestTO.setBasketsInfoTOList(basketsToc);
ObjectMapper mapper = new ObjectMapper();
responseXML = mapper.writerWithDefaultPrettyPrinter().writeValueAsString(basketInfoRestTO);
}
また、私はちょうどライン後basketsInfoTO.getDocumentの値を印刷してみました。
私はの値に印刷しようとしたときただし、 - 行の後basketInfoRestTO.getBasketsInfoTOListを - basketInfoRestTO.setBasketsInfoTOList(basketsToc);
私はこの\取得していますラインの下に使用して応答から「文字の問題を
あなたが目にこの問題を解決しようとしていますクライアント側かサーバー側か? – Aaron
あなたはJSONオブジェクトを与えられました - それをJSONオブジェクトとして解析し、 'document'フィールドを取得します。文字列の置換を混乱させないでください。XML宣言を手動で取り除くことを心配しています。 –