npm 包 @asymmetrik/node-fhir-server-core 使用教程

介绍

@asymmetrik/node-fhir-server-core 是一个 Node.js 包,提供了一个可扩展的、符合 FHIR 规范的服务器框架,用于创建自己的 FHIR 服务器。 它是基于 Express 和 MongoDB 构建的,并提供了许多扩展接口和插件,以方便开发自己的 FHIR 服务器。

安装

首先,你需要使用 npm 安装该包:

--- ------- ---------------------------------

使用

创建服务器

使用如下代码创建服务器:

----- - ------- --------- - - ---------------------------------------------

----- ------ - -
  ------- -
    ----- ----------
    ----- -----
    ----------- -------------------
    ----------- -----
  --
  -------- -
    ------ --------
  --
  ------ -
    ---- ---------------------------------
  --
--

----- -------- - --- ---------------
----------------

插件机制

该服务器框架提供了一个灵活的插件机制,用于扩展服务器并添加自定义功能。 插件是以类的形式提供的,并且需要实现以下方法:

  • beforeInitialize(server, callback):在初始化服务器之前调用。
  • afterInitialize(server, callback):在初始化服务器之后调用。
  • beforeMiddleware(server, callback):在添加中间件之前调用。
  • afterMiddleware(server, callback):在添加中间件之后调用。
  • beforeRoutes(server, callback):在添加路由之前调用。
  • afterRoutes(server, callback):在添加路由之后调用。

以下是如何添加插件的示例代码:

----- - ---------- - - ---------------------------------------------

----- -------- ------- ---------- -
  ----------------------- -
    --------------------- ----- -------------
  -
-

-- ----
------------------- ------------

自定义路由

可以通过继承 FHIRBaseService 类来自定义路由。 以下是一个自定义路由的示例代码:

----- --------- ------- --------------- -
  -------------------- -
    ---------------
    ------------ - --------
  -
  ---------------- ---- ----- -
    -- ----
  -
-

并通过 myServer.addResources 方法添加路由:

-----------------------
  -
    ------------- ---------------
    -------- --- ----------- ------------- ------------ --
  -
---

实现自定义逻辑

可以使用 FHIRContext 类来管理 FHIR 数据。以下是如何实现自定义逻辑的示例代码:

----- - ----------- - - ---------------------------------------------

----- ------- - --- --------------

-- -- ---- --
------------------------------------------ -- ---------------------

更多示例

以下代码是完整的使用示例:

----- - ------- ---------- ---------------- ----------- ----------- - - ---------------------------------------------

----- --------- ------- --------------- -
  -------------------- -
    ---------------
    ------------ - --------
  -
  ---------------- ---- ----- -
    -- ----
  -
-

----- -------- ------- ---------- -
  ----------------------- -
    --------------------- ----- -------------
  -
-

----- -------- ------ -
  ----- ------ - -
    ------- -
      ----- ----------
      ----- -----
      ----------- -------------------
      ----------- -----
    --
    -------- -
      ------ --------
    --
    ------ -
      ---- ---------------------------------
    --
  --

  ----- -------- - --- ---------------
  ------------------- ------------
  -----------------------
    -
      ------------- ---------------
      -------- --- ----------- ------------- ------------ --
    -
  ---
  ----- ----------------

  ----- ------- - --- --------------
  ----------------- -----------------------------
-

-------

总结

@asymmetrik/node-fhir-server-core 是一个实现了 FHIR 规范的 Node.js 服务器框架,可以用于创建自己的 FHIR 服务器。 它提供了灵活的插件机制、自定义路由和自定义逻辑的功能,具有较高的可扩展性和自定义性。

来源:JavaScript中文网 ,转载请联系管理员! 本文地址:https://www.javascriptcn.com/post/152371


猜你喜欢

  • NPM 包 gh 使用教程

    GitHub 是开发者们日常使用的版本控制工具,而 NPM 是前端开发者们的必备工具之一。npm 包 gh 为我们提供了与 GitHub API 交互的快捷方式,让开发更加高效。

    5 年前
  • npm 包 tpl 使用教程

    前言 在前端开发中,我们通常需要对模板文件进行操作,由于模板文件的复杂度和多样性,手动进行操作往往比较繁琐。此时,我们可以使用 npm 包 tpl 来帮助我们快速操作模板文件。

    5 年前
  • npm 包 pub 使用教程

    前言 npm 是 Node.js 平台的包管理器,通过它可以方便地查找、安装、管理和发布 Node.js 包。在前端开发中,使用 npm 包极大地提高了代码的复用性和模块化程度。

    5 年前
  • npm 包 API 使用教程

    简介 npm 是 Node.js 的包管理工具,它可以帮助开发者快速地安装、更新、卸载和发布 JavaScript 包。在前端开发中,我们经常使用大量的第三方包来提高开发效率和代码质量,而 npm 就...

    5 年前
  • npm 包 props 使用教程

    什么是 props? 在 React.js 中,props 是组件之间传递数据的一种方式。props 是一个对象,它包含了一些键值对,每个键值对代表了一个属性和它的值。

    5 年前
  • npm 包 react-raphael 使用教程

    背景 React 是目前前端开发中最流行的框架之一,它能使我们更有效地组织和开发 Web 应用。Raphael 是一个强大的 SVG 操作库,让我们能够在浏览器中创建出色的矢量图形。

    5 年前
  • npm包babel-preset-es2015-rollup使用教程

    在前端开发中,常常需要使用到一些新的JavaScript语法和特性,然而并不是所有的浏览器都支持这些特性。babel是一个著名的JavaScript转码器,可以将新的JavaScript代码转换成老版...

    5 年前
  • npm 包 area-polygon 使用教程

    在前端开发中,我们经常需要计算多边形的面积。如果你是从事 GIS 地图开发的工程师,这一需求将更加常见。而在计算多边形面积时,我们通常需要用到数学公式或者算法。但是,这一计算过程其实可以通过使用 np...

    5 年前
  • npm 包 turf-point 使用教程

    在前端开发中,经常需要处理地理信息数据。turf-point 是一个用于创建地理点的 npm 包,可以协助开发者快速创建、编辑和分析地理点。本文将详细介绍 turf-point 包的使用方法,帮助读者...

    5 年前
  • npm 包 @turf/points-within-polygon 使用教程

    背景 在前端开发中,有时候需要处理地理信息时就需要用到地理信息系统(GIS)。而 Turf.js 是一款用于处理地理信息的 JavaScript 库,它提供了很多方便且易用的 API,能够处理点、线、...

    5 年前
  • npm 包 @turf/nearest-point-on-line 使用教程

    随着前端技术的不断发展,越来越多的人开始关注地图展示和地理信息处理的相关技术。其中,最常用的就是关于地理位置的计算。在地理位置计算方面,@turf/nearest-point-on-line 是一个非...

    5 年前
  • NPM包@turf/centroid 使用教程

    简介 在前端开发中,我们经常需要处理地理数据。而@turf/centroid是一款npm包,提供了计算多边形中心的功能。本文将为大家详细介绍@turf/centroid包的使用教程,以及示例代码和深度...

    5 年前
  • npm 包 @turf/area 使用教程

    前端开发中,地理信息系统(GIS)相关技能越来越受到重视。@turf/area 是一个常用的开源 JavaScript 库,可以用来计算地图上的区域面积。这个包可以用于计算圆形、多边形和线条等不同类型...

    5 年前
  • npm包fast-simplex-noise使用教程

    在前端领域,快速生成球形几何体、山脉、云彩等效果是一个常见的需求,而fast-simplex-noise是一个非常流行的npm包,用于生成快速而高质量的复杂性噪声,从而实现这些效果。

    5 年前
  • npm 包 armillary 使用教程

    在前端开发过程中,我们常常需要使用第三方库来提高我们项目的效率和功能。其中,npm 是一个常见的 JavaScript 包管理器,它可以帮助我们轻松地安装、升级和管理我们所需要的第三方库。

    5 年前
  • npm 包 @typed/curry 使用教程

    函数编程中,柯里化(Currying)是一种重要且常用的技术。它能够让我们写出更加模块化、高效和易于维护的代码。 在 JavaScript 中,柯里化可以通过手写代码实现。

    5 年前
  • npm包 @graphql-codegen/typescript-operations使用教程

    什么是@graphql-codegen/typescript-operations @graphql-codegen/typescript-operations是一个npm包,它可以自动生成Types...

    5 年前
  • npm 包 @graphql-codegen/typescript-compatibility 使用教程

    前言 GraphQL 是一个数据查询和操作语言。它是由 Facebook 开发并在 2015 年公开发布的,现已成为了现代 Web 应用程序中流行的技术之一。 在 GraphQL 生态系统中,有许多工...

    5 年前
  • npm 包 @graphql-codegen/typescript 使用教程

    在现代化的 JavaScript 应用程序中,GraphQL 已经变得越来越流行。GraphQL 使得前端应用程序从后端可以请求精准的数据,这极大地降低了前端应用程序的复杂性。

    5 年前
  • npm 包 @graphql-codegen/plugin-helpers 使用教程

    前言 GraphQL 在 Web 开发中得到越来越广泛的应用,而且随着 GraphQL API 数量的增加,我们不得不考虑代码生成(Code Generation)的问题。

    5 年前

相关推荐

    暂无文章