Ansbile 中列表的等效 HTTP 方法是什么

问题描述 投票:0回答:1

我正在尝试寻找与以下方法的剧本代码等效的 HTTP 方法:LIST。如果它是自定义方法,我如何通过 python 使用它。

- name: list all  folders
      ansible.builtin.uri:
        url: https://{{ My_vault_url }}
        method: LIST
        return_content: true
        body_format: json
      register: list_url

如果我尝试像 requests.list 那样,我会得到一个错误,即列表不是请求方法。

ansible ansible-2.x
1个回答
0
投票

当然可以使用 Ansible 与 Web 端点交互,但是没有 HTTP 方法

LIST
。只能使用
GET
来获取包含所有文件夹链接的页面内容。

---
- hosts: localhost
  become: false
  gather_facts: false

  vars:

    URL: download.rockylinux.org/pub/rocky/9/BaseOS/x86_64/os/Packages/

  tasks:

  - name: List all  folders
    ansible.builtin.uri:
      url: https://{{ URL }}
      method: GET
      return_content: true
      body_format: raw
    register: response

  - name: Show Content
    debug:
      var: response.content

将产生

的输出
TASK [Show Content] ***********************************************************************
ok: [localhost] =>
  response.content: |-
    <html>
    <head><title>Index of /pub/rocky/9/BaseOS/x86_64/os/Packages/</title></head>
    <body>
    <h1>Index of /pub/rocky/9/BaseOS/x86_64/os/Packages/</h1><hr><pre><a href="../">../</a>
    <a href="a/">a/</a>                                                 11-Nov-2023 23:54                   -
    <a href="b/">b/</a>                                                 05-Apr-2024 06:41                   -
    <a href="c/">c/</a>                                                 06-Mar-2024 21:12                   -
    <a href="d/">d/</a>                                                 11-Nov-2023 23:54                   -
    <a href="e/">e/</a>                                                 26-Mar-2024 20:17                   -
    <a href="f/">f/</a>                                                 05-Apr-2024 06:41                   -
    <a href="g/">g/</a>                                                 05-Apr-2024 06:41                   -
    <a href="h/">h/</a>                                                 11-Nov-2023 23:54                   -
    <a href="i/">i/</a>                                                 06-Mar-2024 21:12                   -
    <a href="j/">j/</a>                                                 12-May-2023 04:58                   -
    <a href="k/">k/</a>                                                 05-Apr-2024 06:41                   -
    <a href="l/">l/</a>                                                 08-Apr-2024 21:46                   -
    <a href="m/">m/</a>                                                 15-Nov-2023 23:47                   -
    <a href="n/">n/</a>                                                 07-Mar-2024 22:24                   -
    <a href="o/">o/</a>                                                 08-Mar-2024 00:58                   -
    <a href="p/">p/</a>                                                 05-Apr-2024 06:41                   -
    <a href="q/">q/</a>                                                 12-May-2023 04:58                   -
    <a href="r/">r/</a>                                                 04-Apr-2024 02:27                   -
    <a href="s/">s/</a>                                                 12-Apr-2024 02:40                   -
    <a href="t/">t/</a>                                                 09-Feb-2024 01:21                   -
    <a href="u/">u/</a>                                                 11-Nov-2023 23:54                   -
    <a href="v/">v/</a>                                                 11-Nov-2023 23:54                   -
    <a href="w/">w/</a>                                                 11-Nov-2023 23:54                   -
    <a href="x/">x/</a>                                                 13-Dec-2023 04:16                   -
    <a href="y/">y/</a>                                                 11-Nov-2023 23:54                   -
    <a href="z/">z/</a>                                                 11-Nov-2023 23:54                   -
    </pre><hr></body>
    </html>

这需要事后解析。

© www.soinside.com 2019 - 2024. All rights reserved.