你当前正在访问 Microsoft Azure Global Edition 技术文档网站。 如果需要访问由世纪互联运营的 Microsoft Azure 中国技术文档网站,请访问 https://docs.azure.cn

有关 FHIR 服务的常见问题解答

重要

Azure API for FHIR 将于 2026 年 9 月 30 日停用。 按照迁移策略在该日期之前过渡到 Azure Health Data Services FHIR 服务。 由于 Azure API for FHIR 停用,在 2025 年 4 月 1 日开始前不会允许新的部署。 Azure Health Data Services FHIR 服务是 Azure API for FHIR 的演化版本,可让客户管理 FHIR、DICOM 和医疗技术服务,并集成到其他 Azure 服务。

本部分介绍有关 Azure Health Data Services FHIR 服务的一些常见问题(因此称为 FHIR 服务)。

FHIR 服务:基础知识

什么是 FHIR?

Fast Healthcare 互操作性资源(FHIR)是一种互操作性标准,旨在实现在不同卫生系统之间交换医疗保健数据。 此标准由 HL7 组织开发。如今,世界各地的医疗保健组织均正在采用此标准。 可用的最新 FHIR 版本为 R4(发行版 4)。 FHIR 服务支持 R4 和以前的版本 STU3(试用版标准版 3)。 有关 FHIR 的详细信息,请访问 HL7.org

FHIR API 数据是否存储在 Azure 中?

是的,这些数据存储在 Azure 中的托管数据库内。 Azure Health Data Services 中的 FHIR 服务不提供对基础数据存储的直接访问。

如何访问基础数据?

在托管服务中无法访问基础数据。 这是为了确保 FHIR 服务提供医疗保健数据所需的隐私和合规性认证。 如果你需要访问基础数据,可以使用开源 FHIR 服务器

你们支持哪些标识提供者?

我们支持 Microsoft Entra ID 作为标识提供者。

是否可以将 Azure AD B2C 与 FHIR 服务配合使用?

是的。 可以将 Azure Active Directory B2C (Azure AD B2C) 与 FHIR 服务配合使用,以授予对应用程序和用户的访问权限。 有关详细信息,请参阅 使用 Azure Active Directory B2C 授予对 FHIR 服务的访问权限。

你们支持哪个 FHIR 版本?

支持版本 4.0.0 和 3.0.1。

有关详细信息,请参阅 支持的 FHIR 功能。 还可以在 HL7 FHIR 的版本历史记录中查看各个 FHIR 版本(STU3 到 R4)的变化。

Azure API for FHIR 与 Azure Health Data Services 中的 FHIR 服务有何区别?

Azure API for FHIR 是我们最初的正式版产品,截至 2026 年 9 月 30 日即将停用。 Azure Health Data Services FHIR 服务支持其他功能,例如:

默认情况下,每个 Azure Health Data Services 实例的 FHIR 实例限制为 4TB 的存储容量。 若要预配容量超过 4TB 的 FHIR 实例,请创建问题类型为“服务和订阅限制(配额)”的支持请求。

Azure Health Data Services 中的 FHIR 服务与开源 FHIR 服务器之间的区别是什么?

Azure Health Data Services 中的 FHIR 服务是适用于 Azure 的开源 Microsoft FHIR 服务器的托管和管理版本。 在托管服务中,Microsoft 将提供所有维护和更新。

运行 FHIR Server for Azure 时,可以直接访问基础服务。但如需存储 PHI 数据,则你需要负责维护和更新服务器及所有必要的合规性工作。

可在哪些区域使用 FHIR 服务?

FHIR 服务在 Azure Health Data Services 提供的所有区域中都可用。 可以在“ 产品按区域” 页上看到。

可以在何处查看 FHIR 服务已发布的内容?

发行说明页中概述了过去一个月在该托管服务中随附的所有功能。

若要查看将发布到托管服务的内容,可以查看 开源 FHIR 服务器的发布页面 。 我们已使用 Azure Health Data Services 标记项(如果它们将发布到托管服务),并在开放源代码的发布页上发布两周后可用。 如果你想要在自己的环境中进行测试,我们还提供了有关如何测试内部版本的说明。 我们正在评估如何最好地共享其他托管服务更新。

若要查看托管服务中当前有哪些发布包,可以查看 FHIR 服务和属性下 software.version 的功能语句。 你将看到部署了哪个包。

在哪里可以找到在数据库上运行的 FHIR(R4/STU3)版本?

可以在属性(FHIR URL/metadata)下 fhirVersion 的功能语句中找到公开的确切 FHIR 版本。

是否可以将 FHIR 服务从 STU3 切换到 R4?

否。 我们没有办法更改现有数据库的版本。 需要创建新的 FHIR 服务并重新加载数据。 可以利用 JSON 到 FHIR 转换器将 STU3 数据转换为 R4。

是否可以自定义 FHIR 服务的 URL?

否。 无法更改 FHIR 服务的 URL。

FHIR 实现和规范

什么是 SMART on FHIR?

SMART(可替换式医疗应用程序和可重用技术)on FHIR 是一组开放式规范,用于将合作伙伴应用程序与 FHIR 服务器和其他健康 IT 系统(如电子健康记录和健康信息交换)集成。 创建 SMART on FHIR 应用程序能够确保你的应用程序可供大量不同的系统访问和利用。 有关 SMART 的详细信息,请参阅 SMART Health IT

FHIR 服务是否支持 SMART on FHIR?

是的,使用 AHDS 示例支持 SMART on FHIR 功能。 这称为 SMART on FHIR(增强)。 SMART on FHIR(增强版)可被视为满足 SMART on FHIR 实施指南 (v 1.0.0)§170.315(g)(10) 用于患者和人群服务标准的标准化 API 的要求。 有关详细信息,请访问 SMART on FHIR(增强)文档

能否创建自定义 FHIR 资源?

我们不允许自定义 FHIR 资源。 如需自定义 FHIR 资源,可在带有扩展的基本资源上生成自定义资源。

FHIR 服务是否支持扩展

允许将任何有效的 FHIR JSON 数据加载到服务器。 如果你要存储定义扩展的结构定义,可将其另存为结构定义资源。 若要搜索扩展,需要自定义搜索参数

如何实现 XML 中查看 FHIR 服务?

在托管服务中,我们仅支持 JSON。 开源 FHIR 服务器支持 JSON 和 XML。 若要在开放源代码中查看 XML 版本,请使用 _format= application/fhir+xml

对 _count 有何限制?

当前对 _count 的限制为 1000 条。 如果将 _count 的数量设置超过 1000 条,则捆绑包会显示一条警告,提示系统只会显示前 1000 条记录。

能否在 FHIR 服务中发布捆绑包?

目前支持在 FHIR 服务中发布批量捆绑包事务捆绑包

该如何在 FHIR 服务中获取单个患者的所有资源?

FHIR 服务支持 $patient-everything 操作,该操作可提供与单个患者相关的所有数据。

在 FHIR 服务中搜索资源时,默认排序是什么?

支持按 FHIR 服务中的字符串和 dateTime 字段进行排序。 有关其他受支持的搜索参数的详细信息,请参阅 FHIR 搜索概述。

FHIR 服务是否支持任何术语操作?

否,FHIR 服务目前不支持术语操作。

FHIR 服务中的删除类型有何区别?

FHIR 服务中支持两种基本删除类型。 它们是 “删除”和“条件删除”。

  • 使用“删除”时,可以选择进行软删除(最常见类型),同时仍可恢复记录的历史版本。
  • 使用条件删除,可以传递搜索条件来一次删除一个资源或一次多个项。
  • 如果使用 Delete 或 Conditional Delete 传递 hardDelete 了参数,则删除所有记录和历史记录且不可恢复。

使用 FHIR 服务

是否可以在 FHIR 服务上执行运行状况检查?

若要对 FHIR 服务执行运行状况检查,请在 GET 请求中输入{{fhirurl}}/health/check。 应能够看到 FHIR 服务的状态。 HTTP 状态代码响应,200 和 OverallStatus 作为正常响应意味着运行状况检查成功。

如果出现错误,可能会收到 HTTP 状态代码 404(找不到)或状态代码 500(内部服务器错误)的错误响应,以及响应正文中的详细信息。

后续步骤

在本文中,你已了解有关 FHIR 服务的常见问题的解答。 若要查看有关 Azure API for FHIR 中 FHIR 服务的常见问题,请参阅

FHIR® 是 HL7 的注册商标,经 HL7 许可使用。