繁体   English   中英

放心。 是否可以从响应 json 中提取 JSONObject/JSONArray?

[英]Rest-assured. Is it possible to extract JSONObject/JSONArray from response json?

我正在使用 RestAssured,我得到了这样的回应——

{
    "Data": {
        "Sub": {
            "SubDetails": [
                {
                    "OrgId": 5,
                    "SubId": 1,
                    "SubName": "Mathematics"
                }
            ]
        }
    },
    "RawData": {
        "Url": "http://localhost:11111/cases/case-15",
        "Type": "Rest",
        "Request": {
            "Details": {
                "OrganizationId": 5,
                "Student": {
                    "Age": 30,
                    "Religion": "Hindu",
                    "StudentId": 10
                }
            }
        },
        "Response": {
            "SmartReturnObject": {
                "Subject": [
                    {
                        "SubjectId": 1,
                        "SubjectName": "Mathematics"
                    }
                ],
                "OrganizationId": 5
            }
        },
        "IsApiError": false
    },
    "SessionId": "5q0",
    "RequestUniqueId": "4543534",
    "StatusCode": "4540000",
    "StatusMessage": "Success",
    "DataSource": "DD"
}  

现在我需要单独提取数据对象和单独的原始数据,但我失败了。
我也尝试使用 JSONPath,但没有以 JSON 格式获取它。
我试过

JsonPath body= response.jsonPath();
          Object value=body.get("Data");
          System.out.println("Value is-"+value);  

并得到这样的 - {Sub={SubDetails=[{OrgId=5, SubId=1, SubName=Mathematics}]}}
我希望响应为JSONObjectJSONArray类型的instanceof

pom.xml

    <dependency>
        <groupId>com.google.code.gson</groupId>
        <artifactId>gson</artifactId>
    </dependency>

试试下面 -

Gson gson = new Gson();
try {
     JSONObject obj = new JSONObject(gson.toJson(givenString));
}catch (Exception e){
     System.out.println(e.toString());
}

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM