influxdb.api() 函数
influxdb.api() 是实验性的,并且 随时可能更改。
influxdb.api() 向指定的 InfluxDB API 路径提交 HTTP 请求,并返回包含 HTTP 状态码、响应头和响应主体的记录。
注意: influxdb.api() 使用指定的 token 的授权,或者,如果从 InfluxDB UI 执行,则使用调用脚本的 InfluxDB 用户的授权。每个请求都适用授权权限和限制。
响应格式
influxdb.api() 返回一个具有以下属性的记录:
- statusCode: GET请求返回的HTTP状态码 (int).
- headers: HTTP响应头(字典)。
- body: HTTP 响应主体(字节)。
函数类型签名
(
method: string,
path: string,
?body: bytes,
?headers: [string:string],
?host: string,
?query: [string:string],
?timeout: duration,
?token: string,
) => {statusCode: int, headers: [string:string], body: bytes}
有关更多信息,请参见 Function type signatures。
参数
方法
(必填) HTTP请求方法。
路径
(必需) InfluxDB API 路径。
主机
InfluxDB 主机 URL (在 InfluxDB 外部执行时必需)。 默认值为 ""。
令牌
InfluxDB API token
(在InfluxDB外部执行时需要).
默认值是 "".
头部信息
HTTP请求头。
查询
URL 查询参数。
超时
HTTP 请求超时。默认值是 30s。
主体
HTTP请求体作为字节。
示例
检索 InfluxDB OSS 实例的健康状况
import "experimental/influxdb"
import "influxdata/influxdb/secrets"
token = secrets.get(key: "INFLUX_TOKEN")
response = influxdb.api(method: "get", path: "/health", host: "http://localhost:8086", token: token)
string(v: response.body)
通过InfluxDB Cloud API创建一个存储桶
import "experimental/influxdb"
import "json"
import "influxdata/influxdb/secrets"
token = secrets.get(key: "INFLUX_TOKEN")
influxdb.api(
method: "post",
path: "/api/v2/buckets",
host: "https://us-west-2-1.aws.cloud2.influxdata.com",
token: token,
body:
json.encode(
v: {
name: "example-bucket",
description: "This is an example bucket.",
orgID: "x000X0x0xx0X00x0",
retentionRules: [],
},
),
)