@poty/http
Poty HTTP是一个基于 Poty 框架的服务器框架
Poty HTTP应该仅提供一个http服务器中间件,不处理具体的请求
description
@Guard 首先,由客户端发起请求,所有请求都应该先进行接口权限认证,读取路由和headers进行权限判断;
@Parser 权限通过之后,开始处理请求体解析,如果路由单独配置了解析器,则优先使用,否则使用默认配置的解析器,默认解析器应该支持根据请求content-type进行解析
@Validator 解析完成之后,可以先加一层校验器,方便服务器对客户端参数进行一次校验
@API @GET @PUT @POST @ALL 校验通过之后,转发到路由处理函数,并根据处理函数配置参数进行传参,函数可以是同步的也可以是异步的,处理完成之后,其返回值应该是处理结果,如果有问题,应该抛错误
@Pipe 处理结果不论成功还是失败,都应该进行一次响应前的拦截,以便服务器对结果进行统一封装
此外还应该有
defaultRoute 默认的路由处理函数,以防用户访问了一个未知的地址
封装之后的内容,由Poty-http和服务器库发送至客户端
@poty/http 应该支持以下功能
- [x] @Guard 权限校验
- [x] @Parser 请求体解析
- [x] @Validator 配置校验数据,在全局校验器中校验
- [x] @API 常见的请求方式,同时应该支持静态页面服务
- [x] @Pipe 响应过滤器
- [x] defaultRoute 默认请求处理
- [ ] 考虑对微服务的支持