我从另一项服务获得的响应是下面记录的json
jsonPromise = response.thenApplyAsync(responseJSON -> responseJSON.getBody(WSBodyReadables.instance.json()));
JsonNode json = jsonPromise.toCompletableFuture().get();
logger.info("log json" +json);
json数据
{"Key":"-----BEGIN RSA PRIVATE KEY-----\nMIIEowIBAAKCAQEAtjtwYkEJStSEDI808nRrmfn/FH1fMwz8P08iLAliLMsIfmBN\nDcwKOw3eZP1ACgXbGYTPNdyxk+d5F6M2+Fw3CcAt+yy6nwPUbKdDOxhNfy3XWkk4\nadQRUH5Lh6M/rzqUOQ7n5Zt2F6IWI+5xpoGAOyDPTIX0V9TrdDBQMal0alw3YBSH\nehH3mfJc9neSPnRMHOYSB94+BivWHHjiHn0xanlsGS0Dk3NU7Phe2JkdFuCKt/wf\n4L/fWjCqR2fTlM4vVp4ezr4UWk2BJ6iiZbL+TZ8J6HpMV9Z203C+7YOR+Zl1ggRc\nNHgnadzhSb2ZCGjRwiFAOqaHMOA27PtjW8SJqwIDAQABAoIBAGu9aq18nBzU1pmC\nVaB/OlrX1nrrwMwzAjP/+kkk5xlqlMP69bORjf7qLTFyFVmXqrlErym+KHM0qIBU\nLBzckGHAcK8O++sl3YK7xWD79l2Z4bfskGDpU69ObCNuXimgrZ+qc2pp5oEEgKiP\nwjvaVtEejdFFZXhEV0zjf5ZNBJoYmH/3mgQ6OFIPgn0z+rPtVHGUnhl7yXq/V0Ha\nM4f/sxBaFHVbo2kw1cLGSXVzlXdpJnQZtGrI2I0P7TtMGbzWc7q2Hk49J+/Mgj5q\nLn1C6iFKTm1xzMYs6o/wd1OopEANEbe1bePGHCNmgfVaboYdXTYqnfB+c1ou5xd0\nDIMBPzECgYEA8Dy8kOCBoJKmHZQpvoPkl6X0H5YqIBGlejSBp4lIdw92zWDgAHSl\nvBeWfEkGHrpEL/az3JxoDmUBLpv3ilDq/WYWjnsCLm7qtu1Rkc4eT+p9FJ1ALrft\nzSYi4AL4Iznf1FSS3jUAkENeUSG/kbRuA8etyZGn4lY+xzPEDpwnNxMCgYEAwjBk\nRaxRxmZ1hIVqu6/HUDRdyAo9Qgukz3r+exJz4HvkY0Yw+vmeFH31bh8XIibW1xpe\nmPS/SSHl88a0D2iODCIpfLO5NuvP+fGiXyH8xXUYFth9Lnqq3O2aW5oa50ZyEjRM\n5hvuESvGk56DFJkLBBRJDzAQm/u5I/B0vjVfPgkCgYBg+5QARLHv+ePXww2LHMG2\nuscvzTZaVeVgzTueP9yiO/rw9G/Znz2dDkSxDeXLl9SZLFX19KpJTVtJzqsDCqGj\nBIiMonoB9sMIcAvi+bvg9T/jh4v2kEgO7ptbpbc4uU9z72SPEgSVOK0lwaMNljJn\nkj/FROjqhXi4gFxgrYdjQwKBgE5Cima558r5h+r8ieNSGBVuxUzVM5LmdmlXvC+F\nZEXYKFcJ9rtu1hKUINFcnkoZNQRDkFQ8bsreanowXmjHTlf9fJLRK5fCuXKVu0Zz\nwBcj9a1fWjPdI/cdmtPH64fBkD9d7I/gObWZ2tGrVFB8zT+7nSYNzOPQMvEU+zec\n8uFhAoGBAIsWjdFNGp+DkkwTGp8ObYL9Hfin97IQ+X/DCzqIjtfn9EDBNdc83x84\nThEkpsYKLod7cF95eNTBmQzYrlpGR3oA+JbjarMsIVxAR8tHGZahrVjuuv/PTxma\nuMmrRTH53kDaTs2GiDes7RRTUmR5uvtiT9s7QeNBBWscft4JFFcp\n-----END RSA PRIVATE KEY-----\n"}
当我使用以下代码提取数据时-
privateKey = json.get("Key").toString();
我仍在获取转义字符。还有什么其他方法可以用来从JsonNode
中提取数据。
答案 0 :(得分:1)
toString
提供了对开发人员友好的字符串,但是如果您希望从字符串节点中获取实际内容,则可能需要textValue()
。
public abstract String toString()
产生节点的开发人员可读表示的方法; 可能可能不是有效的JSON。如果您想要有效的JSON输出(或使用其他Jackson支持的数据格式之一格式化的输出),请确保使用ObjectMapper
或ObjectWriter
来序列化实例,例如:
public String textValue()
用于访问字符串值的方法。 否是否对非字符串值节点进行任何转换;对于非字符串值(isTextual()
返回false的值)将返回null。对于字符串值,永远不会返回null(但可能会返回空字符串)