这篇文章已经过机器翻译.放弃
使用 API 导入自定义样书
使用样书 API 将定制样书导入 NetScaler 控制台。使用 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" } }
其中,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
响应正文:
{ "job": { "job_id": "12345678" } }
使用任务 ID 来跟踪操作的状态:
HTTP 方法: GET
URL: https://<ADM-endpoint-name>/stylebook/nitro/v2/config/jobs/<job-id>
返回任务的状态:
200 OK
响应正文:
{ "job": { "job_id": "<job-id>", "progress_info": [ { "is_last": "true", "message": "No job found", "status": "failed" } ], "status": "completed" } }
“已完成”的状态值表示样书已成功导入。通过获取有关样书的信息来确认操作状态:
HTTP 方法: GET
URL: https://<ADM-endpoint-name>/stylebook/nitro/v2/config/stylebooks/samples/1.0/demo-helper-object
显示导入的样书的详细信息:
200 OK
响应正文:
{ "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" } }