使用 API 导入自定义样书
使用样书 API 将自定义样书导入 NetScaler ADM。使用 REST API 在任何工具(例如 cURL 命令行工具或 Postman Chrome 浏览器扩展程序)中使用此样书创建配置包。例如,您可以导入名为 example-lb
的样书,该样书可用于在 NetScaler 实例上创建负载均衡器配置。
HTTP 方法: POST
URL: https://<ADM-endpoint-name>/stylebook/nitro/v2/config/stylebooks/actions/import?mode=async
{
"import": {
"file_name": "add_dnssoarec.yaml",
"source": "<base 64 encoded content of the sb definition>",
"encoding": "base64"
}
}
<!--NeedCopy-->
其中,source
属性的值是样书文件内容的 base64 编码。您可以将样书文件的 YAML 内容粘贴到在线工具中。例如,使用 https://www.browserling.com/tools/file-to-base64 获取 base64 字符串,然后可以将其用作 source
属性的值。
使用此 API 调用,您还可以在一个 API 操作中上载包含多个样书文件的压缩压缩包文件(.tgz 文件)。请执行以下操作:
- 将
file_name
属性更改为 .tgz 文件 - 将 .tgz 文件内容的
source
属性更改为 base64 编码
在工具中成功运行 API 后,您将收到带有任务 ID 的响应。使用此任务 ID 跟踪操作直至完成:
200 ACCEPTED
<!--NeedCopy-->
响应正文:
{
"job": {
"job_id": "12345678"
}
}
<!--NeedCopy-->
使用任务 ID 来跟踪操作的状态:
HTTP 方法: GET
URL: https://<ADM-endpoint-name>/stylebook/nitro/v2/config/jobs/<job-id>
返回任务的状态:
200 OK
<!--NeedCopy-->
响应正文:
{
"job": {
"job_id": "<job-id>",
"progress_info": [
{
"is_last": "true",
"message": "No job found",
"status": "failed"
}
],
"status": "completed"
}
}
<!--NeedCopy-->
“已完成”的状态值表示样书已成功导入。通过获取有关样书的信息来确认操作状态:
HTTP 方法: GET
URL: https://<ADM-endpoint-name>/stylebook/nitro/v2/config/stylebooks/samples/1.0/demo-helper-object
显示导入的样本的详细信息:
200 OK
<!--NeedCopy-->
响应正文:
{
"stylebook": {
"builtin_namespaces": {},
"created_datetime": "2023-01-14 00:13:59",
"custom": true,
"dependencies": [],
"deprecate": "false",
"description": "This Stylebook is a test",
"display_name": "Test StyleBooks",
"encoding": "BASE64",
"header": "Test StyleBooks",
"icon": "''",
"id": "demo575731aacbfc20b4ff00b3b60ea59855",
"is_updatable": true,
"name": "demo-helper-object",
"namespace": "samples",
"primary_keys": {},
"private": false,
"repository_name": "",
"reverse_dependencies": [],
"schema_version": "1.0",
"source": "<base 64 encoded content of the stylebook definition>",
"tenant_id": "1a45fd70-7ce3-4bff-8642-1bd7f7e97673",
"username": "abc",
"version": "1.0"
}
}
<!--NeedCopy-->