是的,您可以访问所描述的值。
您可以访问用户ID,如
resultâ.actions.first().causes.first().userIdâ
如果您确定数据的结构与此完全相同。如果您可能有或可能没有行动,或者可能有或可能没有原因,您可以执行以下操作
resultâ.actions?.first()?.causes?.first()?.userIdâ
使您的访问安全为空,或者您可以使用(
*.
)如果可能有多个操作或原因,操作员可以访问用户ID。
根据您对返回null的内容的评论,这是正常的:
def json_payload = """{"number": 3585, "url": "https://jenkins.test.com/job/test/3585/", "displayName": "test_3585", "timestamp": 1516992464686, "actions": [{"causes": [{"userId": "test"}]}]}"""
def slurper = new groovy.json.JsonSlurper()
def result = slurper.parseText(json_payload)
return resultâ.actions?.first()?.causes?.first()?.userIdâ
并返回“test”。如果没有看到类似的结果,则实际数据中可能存在语法错误或不同的键。