用户登录

打开终端,我们要克隆一个项目,打开浏览器,访问一下 github.com/ninghao/ravent-node ,找到这个仓库的地址,复制一下,再回到终端,进入到想要保存项目的地方,比如桌面上,执行 git clone 把复制的地址粘贴到这里,把克隆的项目放到 nid-node 这个目录的下面。

命令会把远程仓库克隆到本地电脑上,放在桌面上的 nid-node 这个目录的下面。后面我们的应用需要的服务端应用可以基于这个项目继续开发。

进入到这个项目目录的下面,nid-node,进来以后查看一下项目里所有的分支,基于这个 remotes/origin/starting-point 分支,去创建一个本地分支, git checkout -b 本地分支的名字叫 develop,基于 remotes/origin/starting-point 去创建这个分支。

然后执行一下 npm install ,把项目依赖的东西下载安装好。 完成以后,可以使用编辑器打开这个项目目录。

配置

在项目根目录的下面创建一个环境变量文件,名字是 .env,具体需要的配置可以参考项目的 README.md 这个文件,复制一下这些环境变量配置,把它们粘贴到 .env 这个文件里。

密钥

这些环境变量的值需要再修改一下,先改一下需要的密钥。就是这个 PRIVATE_KEY 还有 PUBLIC_KEY 的值,在给用户签发令牌的时候需要用到这两样东西。

回到终端,进入到项目下面的 config 目录, 执行一下 openssl, 执行 genrsa -out private.key 4096,回车执行一下,这个命令会创建一个密钥文件。

再基于这个密钥文件生成一个对应的公钥文件,执行 rsa -in private.key -pubout -out public.key ,回车执行一下。

现在,在项目的 config 目录的下面创建了两个文件,private.key 还有一个 public.key 。 在终端,执行 exit,退出 openssl。

在 config 的下面,有个 convert.key.js ,下面可以执行一下它,先退回到上一级目录,然后执行 node config/covert.key.js ,它会把我们刚才生成的密钥还有公钥文件的内容转换成 base64 编码格式的内容。

复制一下 private.key 下面的内容,回到项目,打开 .env ,把复制的内容交给 PRIVATE_KEY 这个环境变量。再回到终端,找到 public.key 下面的内容,选中这部分内容,复制一下。

回到项目,把复制的内容粘贴到 PUBLIC_KEY 这个环境变量的后面。

数据库

下面再处理一下应用的数据库,MYSQL_DATABASE 的值是这个应用使用的数据仓库的名字,这里可以改成 nid_node,等会儿再去创建这个数据仓库。

MYSQL_PASSWORD 是用户密码,MYSQL_USER 是连接数据仓库的时候用的用户。这些你需要根据自己的实际情况修改一下。

打开数据库客户端,我用的是 tableplus,打开以后新建一个连接,连接的类型选择 mysql, 起个名字叫 nid-node,版本是 8.x , host 还有 port 都使用默认的就行。因为应用的数据仓库服务在本地运行的,端口也是默认的端口。

user 可以设置成 root,然后再输入这个用户的密码,这个密码是在安装 mysql 服务的时候我们自己给 root 用户设置的。

配置好以后,点击 test 测试一下,绿色表示连接成功, save ,保存一下。 然后双击打开刚才创建的这个 nid-node 连接。

打开以后可以去创建一个数据仓库,打开这个数据仓库小图标,新建一个数据仓库,名字是 nid_node, Encoding 设置成 utf8mb4,再设置一下数据仓库的 collation, 选择 utf8mb4_general_ci 。 点击 ok ,然后选中刚才创建的数据仓库,点击 open,打开这个数据仓库。

我们的应用数据都会放在 nid_node 这个数据仓库里。

先关掉当前这个连接,然后编辑一下之前创建的这个 nid-node 连接, 这里可以配置一下 database, 设置成 nid_node。 test 一下,成功以后,点击 connect 。这样打开这个连接,就会直接打开 nid_node 这个数据仓库。

演示

现在这是一个空白的数据仓库。我们可以在里面添加点演示数据,现在去克隆一个仓库,在浏览器打开这个地址,复制一下这个仓库的地址。

回到终端,进入到桌面上,执行一下 git clone, 把复制的远程仓库地址粘贴到这里,把这个项目放在 nid-demo-data 这个目录的下面。

这个目录里面有一些演示数据。回到数据库客户端,右键点击左边栏,选择 import,from sql dump, 打开桌面上的 nid-demo-data, database,选中这里面的这个 sql 文件,点击 打开。 然后再点击 import,确定导入。

完成以后,按一下 command + r 刷新一下。在左边栏这里会出现一些数据表,这些数据表里面有一些演示数据。

再回到终端,进入到这个 nid-demo-data,可以打开这个目录。然后再新建一个窗口,打开 nid-node 这个目录。把 nid-demo-data 里面的这个 uploads 目录,复制一份放到 nid-node 目录的下面 。这里面有一些提前上传好的图像文件。

在终端,进入到上一级目录下面的 nid-node 目录的下面。这是我们的服务端应用所在的位置,执行一下 npm run start:dev ,可以启动应用的开发服务。

接口

下面再准备一下 HTTP 客户端,打开 insomnia ,这是一个 http 客户端软件,可以用它测试我们开发的服务端应用接口。一会儿可以在这里创建一个新的工作区,然后导入服务端应用的接口请求。

再回到终端,新建一个终端标签,进入到桌面上的 nid-demo-data 目录,查看一下这个目录里的东西,进入到这个 insomnia-workspace 目录的下面。 再用编辑器打开这个目录。

打开这个目录下面的 ravent.yaml 文件,command + f ,搜索一下 ravent_api ,把这个文件里的 ravent_api 替换成 nid_node_api,选择全部替换。

再搜索一下 Ravent,把它改成 nid-node。 再找到下一个结果,把 Ravent 改成 nid-node。 然后再改一下这个生产环境的地址,改成 nid-node-api.ninghao.net ,以后我们可能会再修改一下这个生产环境的接口地址。

回到 insomnia,点击这个下拉菜单,选择 create workspace,创建一个工作区。名字可以设置成 nid-node。 点击 create 创建。

然后再打开这个下拉菜单,选择 import data, 来自文件,选择之前我们在编辑器里修改过的这个 ravent.yaml 文件。

这样就会在当前这个工作区里创建一些请求,现在是生产环境,这里可以先把它切换成开发环境。

打开 内容 下面的内容列表请求,这个请求用的是服务端的内容列表接口,地址是 /posts,发送一下这个请求。 服务端应用会响应回来一组内容。

准备服务端项目(Node)《 Vue.js 项目实践:准备项目 》

统计

15260
分钟
0
你学会了
0%
完成

社会化网络

关于

微信订阅号

扫描微信二维码关注宁皓网,每天进步一点