Skip to content

front-end-captain/hapi-server

Repository files navigation

API 接口服务化的设计哲学

  • 调式工具与技巧
  • 后端基础打底框架
  • 脱离版本库的环境参数验证
  • 一致化的 HTTP response 返回
  • 入参检验
  • API swagger 文档化
  • 数据库 ORM
  • 基于 JWT 的用户身份认证
  • 数据缓存
  • 日志系统
  • 单元测试

大多数的商业项目,都离不开一些常见的业务功能

  • 用户身份的建立
  • 服务接口针对用户的验证
  • 获取列表类数据
  • 分页列表数据
  • 获取某一条数据想请个
  • 提交业务数据

总而言之,用户权鉴和业务的增删查改(CURD)

  • 单业务模块化
  • 模块 200 行原则
  • 同类模块分组化
  • 配置文件分离

案例实现的目标业务流程

  1. 用户访问店铺列表,展示店铺,名称,图标 URL
  2. 用户访问目标店铺的商品列表,展示商品名称,图标 URL,商品单价
  3. 用户授权登录,获取用户姓名,openid,性别
  4. 选择需要选购的商品和数量
  5. 创建购物订单
  6. 创建支付订单
  7. 支付订单
  8. 完成订单
方法 描述 举例 资源路径
GET (SELECT) 从服务器取出资源,一个或者多个 获取订单列表 /orders
POST (CREATE) 在服务器创建一个资源 创建一个订单 /order
PUT (UPDATE) 在服务器啊更新资源(客户端提供更新后的完整资源) 修改订单信息 /order/:orderId
PATCH (UPDATE) 在服务器更新资源(客户端提供改变的属性) 修改订单的信息 /order/:orderId
DELETE (DELETE) 在服务器删除资源 删除一条订单记录 /order/:orderId

创建database

$ node_modules\.bin\sequelize db:create

创建表

$ node_modules\.bin\sequelize db:migrate

填充数据

$ node_modules/.bin/sequelize db:seed:all

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published