什么是 Reporting Services 的 REST API?

适用于: SQL Server Reporting Services (2017 及更高版本)❌ Power BI 报表服务器

Microsoft SQL Server 2017 Reporting Services 支持表述性状态转移 (REST) API。 REST API 是支持 HTTP 操作(方法)集的服务终结点。 这些方法提供对 Report Server 中资源的创建、检索、更新或删除访问权限。

REST API 提供对 SQL Server 2017 Reporting Services 报表服务器目录中对象的编程访问。 以下是对象示例:

  • 文件夹
  • 报表
  • KPI
  • 数据源
  • 数据集
  • 刷新计划
  • 订阅

使用 REST API 时,可以导航到文件夹层次结构、发现文件夹的内容或下载报表定义。 此外还可创建、更新和删除对象。

注意

如果希望查看和删除个人数据,请在符合 GDPR 的 Windows 数据主体请求站点中查看 Microsoft 的指南。 如果正在寻找有关 GDPR 的一般信息,请参阅服务信任门户的 GDPR 部分

REST API 请求/响应的组件

REST API 请求/响应对可分解为五个组件:

  • 请求 URI:

    • 虽然请求 URI 包含在请求消息标头中,但大多数语言或框架都要求将其与请求消息分开传递。
    • {URI-scheme} :// {URI-host} / {resource-path} ? {query-string} 组成部分。
    请求 URI 说明
    URI 方案 指示用于传输请求的协议。 例如,httphttps
    URI 主机 指定通过 REST 服务终结点的服务器域名或 IP 地址,例如 myserver.contoso.com
    Resource path 指定资源或资源集合,其中可能包含服务在做资源抉择时使用的多个段。 例如:CatalogItems(01234567-89ab-cdef-0123-456789abcdef)/Properties 可用于获取 CatalogItem 的指定属性。
    查询字符串(可选) 提供更简单的参数,例如 API 版本或资源选择条件。
  • HTTP 请求消息标头 字段:

    • 所需的 HTTP 方法,也称为操作或谓词。
    • 告知服务所请求的操作类型。 Reporting Services REST API 支持 DELETE、GET、HEAD、PUT、POST 和 PATCH 方法。
    • 指定的 URI 和 HTTP 方法所需的额外可选标头字段。
  • 可选的 HTTP 请求消息正文字段

    • 支持 URI 和 HTTP 操作。 例如,POST 操作包含作为复杂参数传递的多用途 Internet 邮件扩展 (MIME)。
    • 对于 POST 或 PUT 操作,还应在 Content-type 请求标头中指定正文的 MIME 编码类型。 某些服务要求使用特定的 MIME 类型,如 application/json
  • HTTP 响应消息标头字段

    • HTTP 状态代码,包括从 2xx 成功代码到 4xx 或 5xx 错误代码在内的各种代码。 或者,可能返回服务定义的状态代码,如 API 文档中所指示。
    • 可选的额外标头字段,用于支持请求的响应,例如 Content-type 响应头。
  • 可选的 HTTP 响应消息正文字段

    • 在 HTTP 响应正文中返回 MIME 编码的响应对象,例如来自返回数据的 GET 方法的响应。 通常,这些对象以结构化格式(如 JSON 或 XML)返回,如 Content-type 响应标头所指示。

API 文档

新式 REST API 需要新式 API 文档。 REST API 是基于 OpenAPI 规范构建的,该规范也称为 Swagger 规范。 Microsoft Learn 上提供了 Power BI 报表服务器 REST API 文档。

测试 API 调用

如果需要测试 HTTP 请求/响应的工具,不妨选择 Fiddler,这是一个免费的 Web 调试代理,可以截获 REST 请求,以便轻松诊断 HTTP 请求/响应消息。