通过前面的例子可以看出来,所有的访问都交给了server.js。
原因很简单,因为我们没有做路由呢。
node 没有提供依据文件夹建立路由的方式,而是需要我们自己设置路由。
如果路由很复杂的话,我们可以使用 express 来做,因为可以节省很多代码。
但是我们这里的路由很简单,只有一个路由,那么也就没有必要使用 express。
后端API嘛,其实就是提供一种服务,那么既然这样,我们是不是可以把服务细分一下,然后给每一个服务编个号码,前端提交申请的时候,把这个服务编号提交过来(以及需要的参数),那么后端不就清楚前端要做什么了吗?
这样的话,路由就简单了,只需要一种。
/api/:serverId/:dataId
- api 后端API的标识,区分其他访问,好吧其实也没有其他访问。
- serverId 服务ID,依据ID可以加载服务需要的meta(后端)。
- dataId 主记录的ID。依据ID获取一条记录,依据ID删除记录等使用。
- 其他参数,都放在body里面,通过post 提交。
这样就简单了。
多种服务类型
我们给服务分一下类:
-
单独服务
- 添加数据
- 修改数据
- 删除数据
- 获取一条数据
- 获取字典数据 (不分页不查询)
- 获取分页数据(支持查询)
- 其他特殊需求
打包服务
可以把上述单独的服务,打包在一起,前端可以一次性提交,避免前端多次请求数据。其他服务
基于数据库的话,上面那些服务应该是够用了。其他服务呢,可以是其他第三方的,比如获取地图信息,获取天气信息等。这个就要具体问题具体分析了。