无法从具有较旧版本和 python 2.x 的 rhel 计算机访问 json

Can't access json from rhel machine with older ansible version and python 2.x

我正在使用 uri 模块针对 api 执行相同的 request/task。 当我从 python 3.7.1 和 ansible 2.8.1 上的 mac 执行时,它起作用了。当我从带有 python 2.7.5 和 ansible 2.4.2.0 的 red hat linux machine 执行时,它不起作用并且我得到错误 'dict object' has no attribute 'json'

这是具有虚拟值的任务:

  - name: get request
    uri:
      url: https://url.com{{ foo }}
      method: GET
      user:  user
      validate_certs: False
      password: password
      return_content: yes
      body_format: json
    register: page_contents
    until: page_contents.json.{{ foo }}[0].status == "deployed"
    retries: 30
    delay: 5

我将 ansible 和 python 版本都更新到了最新版本,现在可以正常工作了。