List 以dict形式访问列表的元素
我试图访问列表的元素,但每当我试图访问它的元素时,它们都被视为文本(请参阅调试输出) 如何循环内容[0]的元素List 以dict形式访问列表的元素,list,ansible,ansible-2.x,List,Ansible,Ansible 2.x,我试图访问列表的元素,但每当我试图访问它的元素时,它们都被视为文本(请参阅调试输出) 如何循环内容[0]的元素 ansible版本:2.5.1 playbook.yml: - hosts: localhost gather_facts: no vars: content: [] tasks: - name: Call the Consul API to get all registered services uri: url: "https
ansible版本:2.5.1
playbook.yml:
- hosts: localhost
gather_facts: no
vars:
content: []
tasks:
- name: Call the Consul API to get all registered services
uri:
url: "https://{{API_URL}}/v1/health/service/{{item}}?Status=critical"
headers:
Authorization: "Bearer {{TOKEN}}"
method: GET
return_content: yes
status_code: 200
body_format: json
force: yes
register: r
with_items:
- service1
- service2
- set_fact:
content: "{{ lookup('flattened', r | json_query('results[*].content')) }}"
- debug:
msg: "{{ content[0][0] | type_debug }}"
- debug:
msg: "{{ item | type_debug }}"
with_items: "{{ content[0] }}"
调试输出:
TASK [debug]
ok: [127.0.0.1] => {
"msg": "dict"
}
TASK [debug]
ok: [127.0.0.1] => (item=None) => {
"msg": "AnsibleUnsafeText"
}
我希望这个问题和答案能对你们有所帮助。我认为你采取的方法是问题所在