我正在尝试从GET API JSON结果中更新属性,并仅更改一个属性就对整个API数据进行PUT请求。请就PUT Req Task的格式提出建议?
我尝试将以下任务用于GET。不知道如何保存整个api结果,然后更新所需的属性并执行POST。也许可以使用文件来完成?
- name: GET Request for CLUSTERS
uri:
url: https://zsapi.com/BETA/{{ item }}
method: GET
validate_certs: no
return_content: yes
status_code: 200
headers:
Content-Type: application/json
Cookie: "{{ login.set_cookie.split(';')[0] }}"
body_format: json
with_items: "{{ cluster }}"
register: cluster_result
ok: [localhost] => {
"msg": [
{
"bandwidthControlApp": true,
"cloud": "BETA",
"createTime": 1550875210,
"datacenter": {
"id": 526,
"name": "FMT1"
},
"description": "cluster with VIP 169.254.1.100",
"disabled": false,
"id": 2334,
"lastModifiedTime": 1560896398,
"lastModifiedUser": {
"id": 1009,
"name": "adev@xyz.com"
},
"mipUser": false,
"mtsInstances": [],
"name": "fmt1",
"rateLimit": true,
}
]
}
我希望整个API PUT req应该与GET相同,除了我要更新的属性。
答案 0 :(得分:0)
如果我了解得很清楚,您想将msg
中的返回数据中的变量改写为某个新值,然后在后续任务中将其发布到URL吗?如果您将返回的数据注册为事实,这将涉及对该事实的某种操纵。您可以为此使用json_query过滤器。