API接口开发日记
之前做了一个商城的 demo,当时是用的别人接口,用的人比较多,经常就挂了,我就寻思自己开发一下这个接口自用,
主要技术栈很简单,就是 node+express 就行了,当然你还需要会一点 mysql!
爬取数据
爬取原接口数据:Node 爬取数据到数据库练习
代码都在这里了。我之前就爬取下来了。放进数据库。
编写接口代码
这个也没什么好说的,就是运用动态路由,示例代码:
1 | var express = require('express') |
这里我封装了一下数据库查询语句,封装的 sqlquery
代码如下:
1 | let mysql = require('mysql') |
在云服务器上部署 node 项目
我使用的是阿里云的 ECS 云服务器+宝塔面板。
首先将所有文件上传到服务器中:我上传的位置:/www/wwwroot/mallAPI
然后我们在软件商店安装一个 pm2:
打开它,分别填入根目录和启动文件,添加项目,并启动。
然后点击映射,填入你的域名,添加反向代理:
这样就部署好了。
踩坑记录
从数据库中取出 json 数据
在爬取数据的时候,我直接把 JSON 数据放进了 data 字段中,在取出的时候,我们实际得到的是这样一个对象:
所以我们需要对这个数据简单处理:
1 | let sqlStr = 'select data from home_multidata' |
如果不处理,我们是得不到想要的 JSON 数据的,直接给你返回的是这样一个鬼东西:
node 项目需要安装依赖
明明上传了项目,但是在 pm2 管理器部署,总是不成功,可能是依赖问题。我上传的时候没有上传 node-modules
文件夹,因为这个文件实在是又臭又长。
我们直接使用 Xshell 或者宝塔终端或者其他什么都可以,连接到服务器,切换到项目目录,安装依赖就好,这里依然还是推荐淘宝镜像:
1 | npm install -g cnpm --registry=https://registry.npm.taobao.org |
然后:
1 | cnpm install |
开发完成
到这里我们的 API 接口就开发完成了。看看效果:
代码地址
api 代码地址:mallAPI
本博客所有文章除特别声明外,均采用 CC BY-NC-SA 4.0 许可协议。转载请注明来自 你真是一个美好的人类!