首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何使用JsonSlurper?

如何使用JsonSlurper?
EN

Stack Overflow用户
提问于 2015-12-22 08:20:58
回答 1查看 1.1K关注 0票数 2

我在SOAP中编写了一个测试用例,它创建了一个用户并返回Id。这是JsonResponse。通过Groovy脚本,我需要提取id

代码语言:javascript
复制
{
    "schemas":["urn:hid:scim:api:ma:1.0:UserInvitation"],
    "urn:hid:scim:api:ma:1.0:UserInvitation":
        [
            {
                "meta":{ 
                    "resourceType":"UserInvitation",                                                   
                    "lastModified":"2015-12-22T07:45:30Z",
                    "location":"https://test-ma.api.assaabloy.com/credential-management/customer/663/invitation/2643209"
                },
                "invitationCode":"FBXO-SRWS-LKFI-ZKZI",
                "status":"PENDING",
                "createdDate":"2015-12-22T02:45:30Z",
                "expirationDate":"2015-12-22T02:45:30Z",
                "id":2643209
             }
         ]
}

我对Groovy非常陌生。请帮我处理这个。

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2015-12-22 08:24:36

它将是:

代码语言:javascript
复制
import groovy.json.JsonSlurper

def json = """
{
    "schemas":["urn:hid:scim:api:ma:1.0:UserInvitation"],
    "urn:hid:scim:api:ma:1.0:UserInvitation":
        [
            {
                "meta":{ 
                    "resourceType":"UserInvitation",                                                   
                    "lastModified":"2015-12-22T07:45:30Z",
                    "location":"https://test-ma.api.assaabloy.com/credential-management/customer/663/invitation/2643209"
                },
                "invitationCode":"FBXO-SRWS-LKFI-ZKZI",
                "status":"PENDING",
                "createdDate":"2015-12-22T02:45:30Z",
                "expirationDate":"2015-12-22T02:45:30Z",
                "id":2643209
             }
         ]
}"""
def slurped = new JsonSlurper().parseText(json)
assert 2643209 == slurped."urn:hid:scim:api:ma:1.0:UserInvitation"[0].id

new JsonSlurper().parseText(json)语句将返回映射的实例。因此,使用这个映射,您可以使用以下语句获得列表:slurped."urn:hid:scim:api:ma:1.0:UserInvitation",然后是使用getAt运算符([0])的第一个元素,最后是使用id获得所需的值。

票数 3
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/34411326

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档