Apache Airflow-rest API身份验证

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

我正在尝试使用AirFlow rest API触发我的任务。但是无法理解如何进行身份验证。

以下URL在我的浏览器中工作正常。

http://localhost:8181/api/experimental/dags/demo/dag_runs

但是,以下代码给出了身份验证错误。

import requests
import json
from pprint import pprint


result = requests.get(
  "http://localhost:8181/api/experimental/dags/demo/dag_runs",
  data=json.dumps("{}"),
  auth=("myuser", "mypassword"))
pprint(result.content.decode('utf-8'))

我也发现了这一点,但现在确定如何通过身份验证

https://github.com/apache/airflow/blob/master/airflow/api/client/api_client.py

rest airflow airflow-scheduler
1个回答
0
投票

1.-您应该验证身份验证正在您的UI上进行:

http://localhost:8181/api/experimental/dags/demo/dag_runs

此链接应要求认证。

2.-您可以尝试的请求代码段如下:

request({
    url: "http://localhost:8181/api/experimental/dags/demo/dag_runs",
    method: "POST",
    json: {'conf': '{}'},
    auth: {
        'user': 'AIRFLOW_USER',
        'pass': 'AIRFLOW_PASSWORD',
        'sendImmediately': true
    }
}).on('response', function(response) {
    context.log(response.statusCode)
});

来自https://godatadriven.com/blog/using-the-airflow-experimental-rest-api-to-trigger-a-dag/的代码

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