演示 Graphql 的时候,我们需要一个可以返回数据的东西,你可以让应用使用 Mongodb ,或者其它的能存储跟提取数据的方法 ..
保持简单,我们用一个 JSON Server 创建一个演示用的 REST 接口 ..
打开命令行 .. 在项目的下面,去给项目安装一个东西 .. 名字是 json-server ..
回到项目 ... 打开 package.json ... 在 scripts 里面,添加一个新的命令 .. 名字是 json-server --dev..
执行一下 ./node_modules/.bin/json-server --watch db.json --port 3300 ..
在项目下面,创建一个 json 文件,名字是 db.json .. 里面可以先随便添加点数据 .. 可以有一组 posts .. 里面是一组内容 .. 每个内容都有一个 id 属性 .. 还有个 title 属性,表示内容的标题 ..
content 属性里的东西是具体的内容 ... 还有一个表示内容作者的属性 .. 可以添加一个 author .. 对应的值是某个用户的 id 号 ..
复制一份 .. 再添加一条 post 内容 ..
然后再添加一组 users .. 表示用户 .. 每个用户都有一个 id 属性 .. 还有一个 name 属性,对应的值是用户的名字 ..
复制一份这个用户 .. 再添加一个用户数据 .
再添加一组 comments .. 它里面是一组评论内容 .. 每个评论也有一个 id 属性 .. 还有一个 postId 属性,它表示的是评论所属的内容的 id 号 ..
还有一个 author 属性,它的值是评论的作者的 id ... content 属性里面的东西就是评论的个体的内容 ..
下面再用同样的结构添加一条评论数据 ..
运行服务
回到命令行 .. 执行一下 npm run json-server
这里遇到了一个错误 .. 这个是因为评论的最后一个项目这里有一个多余的逗号 .. 去掉它 .. 再回到命令行,重新执行一下 npm run json-server
然后在浏览器上试一下 .. 访问一下 localhost:3300 ..
这里显示的是 json server 的欢迎主界面 .. 上面会列出可用的一些 resources ..
比如这里有一个 posts .. 访问这个地址,返回的就是 db.json 里面的 posts 内容 ..
我们也可以得到某个具体的 post .. 访问一下 posts/ 后面加上 post 的 id 号 ..
回过来 .. 再试一下 comments 这个资源 .. 返回的就是一组评论资源 ..
要得到属于某个具体的内容上的评论 .. 可以访问一下 posts 斜线 .. 内容的 id ,斜线 .. comments ...