npm 包 neo4j-graphql-server 使用教程

阅读时长 4 分钟读完

前言

随着图数据库的发展,越来越多的前端开发者意识到了图数据库在前端应用中的广泛应用,而 neo4j 作为当前最流行的图数据库之一,在前端领域的应用也逐渐得到了认可。

在前端应用中,graphql 作为一种查询语言和服务端通信协议,可以与 neo4j 搭配使用,实现前端与图数据库的无缝连接。而 npm 包 neo4j-graphql-server 提供了一种易用的方式来创建 graphql API,下面将详细介绍该 npm 包的使用方法。

安装与配置

在使用 neo4j-graphql-server 之前,需要先安装 neo4j 数据库和对应的 neo4j-graphql-js 库。首先,在命令行中安装 neo4j:

然后在你的项目目录中安装 neo4j-graphql-js 属于 neo4j-graphql-server 的依赖项:

接下来,在项目根目录中创建 schema.graphql 文件用于定义 graphql 查询模式:

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

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

其中 @relation 标注用于定义关系名称和方向。

最后在项目根目录中创建 server.js 文件用于启动 graphql 服务器:

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

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

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

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

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

其中 makeAugmentedSchema 用于创建增强的 schema,context: { driver } 用于传递数据库驱动器。

现在,可以启动 graphql 服务器并访问 localhost:4000 来查看 graphql playground。

查询

下面将使用 neo4j-graphql-server 执行一些常见的 graphql 操作。

Node 推荐算法

Neo4j 提供了用于查询重要性指标的 Node 推荐算法。下面的查询将从 Person 节点中返回推荐的前 3 个朋友:

在线查找

下面的查询将从 Movie 节点中返回与“Pulp Fiction”相似的在线电影:

热门搜索

下面的查询将从所有 Movie 节点中返回最受欢迎的电影:

结论

通过 neo4j-graphql-server,前端开发者可以方便地查询图数据库,并使用从 neo4j 提供的算法和分析中获得的信息来操纵数据。同时,在这些任务中,graphql 和 neo4j-graphql-js 作为查询语言和服务端库提供了非常好的支持,使用起来非常易用。

来源:JavaScript中文网 ,转载请注明来源 https://www.javascriptcn.com/post/60065f8b238a385564ab6e45

纠错
反馈