- GraphQL实战:写给全栈工程师们
- 王北南
- 595字
- 2025-03-01 05:50:31
2.1 基本开发环境的搭建
作为一名全栈工程师,使用什么编程语言并不重要,而且由于GraphQL已经被绝大多数主流语言实现,读者可以自由使用自己熟悉的编程语言来实现本书中的实例。用已经做好的一个GraphQL服务来先体验一下。本实例使用Node.js和Express-GraphQL[1]对开发环境进行快速搭建。GraphQL服务器端的官方参考实现就是采用JavaScript来实现的,如果不过分追求服务器端的并发能力和低延时的话,JavaScript是玩转GraphQL的最佳选择。
首先要确保开发环境中已经安装了Git[2]和Node.js:[3]

这个项目引用了Apollo GraphQL服务器端实现,Apollo是现在GraphQL开源社区最活跃的服务器端实现。可以使用下面的命令获得该项目的所有分支:

使用下面的命令检出名为“i_am_a_beginner”的分支,它会提供一个几乎是空白的项目,方便读者从头动手一步步来实践GraphQL的各种特性。

也可以检出名为“mini_store”的分支,直接得到一个已经成型的迷你电商GraphQL后端项目,然后在上面直接体验或者动手修改。

有了项目之后,使用命令行进入项目目录。输入下面命令来安装所有项目依赖的JavaScript库:

对于已经安装和习惯使用yarn的读者,也可以使用yarn来安装依赖的JavaScript库:

如果在安装依赖的时候出错,不要惊慌,一般是开发环境问题所致,读者可以自行在互联网上搜索解决问题的办法,也可以在当前项目的GitHub页面提交一个疑问,来等待作者或者其他热心开发者的解答。
如果安装一切正常,输入下面的命令来启动GraphQL服务器端:

随即命令行会提示GraphQL已经在端口8888上开始服务了。如果8888端口已经被占用,可以修改server.js文件里的端口号,使用未被占用服务端口即可。