Print Portal REST API(打印门户 REST API)
简介
在 BarTender 2021 及更高版本中,开发人员现在可以通过一套完整的 REST API 与 Print Portal 进行交互。你可以通过我们的 REST API 执行大多数操作,包括用户身份验证、列出现有文件夹、标签和打印机,以及打印标签,通过发起查询并以 JSON 格式获取结果。
本文旨在简要介绍 Print Portal 的 REST API。我们将带你了解 REST API 的身份验证方法,并演示如何使用 swagger 工具进行 API 测试。
端点与方法
Print Portal REST API 遵循 RESTful 原则,因此支持两种最常用的 HTTP 方法:GET 和 POST。
Print Portal REST API 通过端点 URI访问资源。所有 Print Portal API 端点的基础 URL如下:
{Print Portal Base URL}/BarTender
提交 REST API 请求时,必须使用特定的端点。Print Portal API V1 包含4 个端点,分组如下:
表 1-1 Print Portal REST API 端点与方法。
|
端点 |
HTTP 方法 |
描述与示例 |
是否需要登录 |
|
Authentication |
POST |
使用你的用户名和密码进行身份验证,以便后续请求使用 /api/v1/Authenticate
|
是 |
|
AutomatedPrint |
POST |
在指定库中的文件路径下执行自动打印任务。 /api/v1/print
|
否 |
|
Library |
GET |
返回可用的库。 /api/v1/libraries/{id}
|
否 |
|
Printers |
GET |
返回可用的打印机。 /api/v1/printers/{printerName}
|
否 |
身份验证
当启用身份验证时,必须由已认证的用户发起请求,才能访问 Print Portal 资源。认证成功后会返回一个令牌。
要生成身份验证令牌,请发送一个 POST 请求到
{Print Portal Base URL}/BarTender/api/v1/Authenticate
请求体如下:
{
"userName": "UserName@Domain",
"password": "Password"
}
这将返回一个包含 token 属性的 JSON 用户结构:
{
"success": true,
"token": "string",
"expires_in": 0
}
调用 REST API 端点时,所有后续请求都需要在请求头中添加 Authorization,格式如下:
Authorization: Bearer <TokenString>
使用 Swagger UI 入门
Print Portal 还包含一个名为 swagger 的 REST API 规范系统。Swagger UI 允许你可视化并与 API 资源进行交互,无需实现任何底层逻辑。可以把 swagger 理解为 REST API 的帮助系统,提供说明、测试请求的执行环境,以及每个功能的详细解释。
你可以在 Print Portal Base URL 的 BarTender 后面加上 swagger 来访问 swagger,例如:
{Print Portal Base URL}/BarTender/swagger/
swagger 页面分为上下两部分,这一点很重要,有助于你找到所需信息。上半部分包含API 功能说明,并可以测试执行 API 请求。下半部分标题为“Models”,提供每个功能及其参数的详细说明。
如前所述,Swagger UI 提供了非常实用的功能,让你在部署时可以轻松测试 API。例如,测试身份验证时,展开顶部对应项即可查看认证要求。
点击“Try it out”按钮,并以如下格式输入你的用户名和密码:
然后点击蓝色的 Execute 按钮:
如果 PrintPortal 启用了身份验证,并且用户名和密码正确,则会返回成功,并显示用于后续 REST API 调用的身份验证令牌。
更多信息
如需更多关于自动化 Print Portal 的帮助信息,可以参考 Print
Portal 帮助系统。