salesforce解析带有body的json
时间: 2023-07-26 22:29:03 浏览: 46
在 Salesforce 中解析带有 `body` 的 JSON,可以使用 `JSON.deserializeUntyped()` 方法将其转换为 `Map<String, Object>` 类型的对象,然后再通过 `get()` 方法获取 `body` 字段的值,最后再使用 `JSON.deserialize()` 方法将其转换为指定的对象类型。
以下是一个示例代码:
```java
String jsonStr = '{"status":"success","body":{"name":"John","age":30}}';
Map<String, Object> jsonObj = (Map<String, Object>)JSON.deserializeUntyped(jsonStr);
String bodyJsonStr = JSON.serialize(jsonObj.get('body'));
MyObject myObj = (MyObject)JSON.deserialize(bodyJsonStr, MyObject.class);
```
其中,`MyObject` 是自定义的对象类型,代表 `body` 字段中的数据结构。在示例代码中,先将 JSON 字符串转换为 `Map<String, Object>` 类型的对象,然后通过 `get()` 方法获取 `body` 字段的值,并将其转换为新的 JSON 字符串。最后,使用 `JSON.deserialize()` 方法将 JSON 字符串转换为 `MyObject` 类型的对象。
需要注意的是,如果 `body` 字段中的数据结构比较复杂,可以使用 `JSON.deserializeUntyped()` 方法将其转换为 `Map<String, Object>` 类型的对象,然后再通过递归方式解析其中的子对象。
相关推荐
![rar](https://img-home.csdnimg.cn/images/20210720083606.png)
![pdf](https://img-home.csdnimg.cn/images/20210720083512.png)
![rar](https://img-home.csdnimg.cn/images/20210720083606.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)