# README
zero-api
小巧的 api
主要文件
- app.go 应用,负责整合
Server
和Router
- context.go 一次请求的上下文
- cookie.go
Cookie
相关 - group.go 组路由,即一组由相同前缀组成的路由
- option.go 应用的选项设置
- route.go 每一个
Method(GET/POST/PUT...)
的路由由一个Route
存储 - router.go 路由管理器
- server.go
HTTP Server
路由
静态路由
- 示例:
/blog/list
动态路由
- 格式:
:param
- 示例:
/blog/list/:id
/blog/list/1001
匹配, id="1001"/blog/list/p1001
匹配, id="p1001"/blog/list
不匹配/blog/list/1001/add
不匹配
动态路由,带正则表达式
- 格式:
:param(regexp)
- 示例:
/blog/list/:id(^\d+$)
/blog/list/1001
匹配,id="1001"/blog/list/p1001
不匹配/blog/list
不匹配/blog/list/1001/add
不匹配
动态路由,带验证函数
- 格式:
:param|validator...|
,验证函数必须包裹在|
内 - 备注: 框架自带常用验证函数,也可以自行定义
- 示例:
/blog/list/:id|isNum|less4|
,id 为数字且小于 4 位数/blog/list/1001
匹配,id="1001"/blog/list/1000001
不匹配/blog/list/p101
不匹配
动态路由,混合各种类型
- 格式:
:param(regexp)|validator...|
- 示例:
/blog/:id(^\d+$)|less4|
/blog/100
匹配/blog/1001
不匹配
中间件
共有三种,添加方式如下
- 应用级别中间件,作用在所有路由中
- 组路由级别中间件,作用在该组路由中
- 路由级别中间件,作用在当前路由中
# Functions
AllMethods 所有 HTTP Method.
# Constants
MethodAny 同时注册 GET, POST, PUT, DELETE, HEAD, PATCH, OPTIONS.
MethodConn 用于代理.
MethodDelete 请求服务器删除指定数据.
MethodGet 请求指定的页面信息,并返回实体主体.
MethodHead 类似于 GET 请求,但响应没有具体的内容,用于获取报头.
MethodOptions ..
MethodPatch 类似于 PUT,但可能只包含部分数据。修改部分数据.
MethodPost 向指定资源提交数据处理请求,数据包含在请求体中.
MethodPut 从客户端向服务器传送数据,取代指定文档的内容。替换.
MethodTrace 回显服务器收到的请求.
VERSION 框架版本号.
# Interfaces
App 应用.
Context 上下文.
ContextBase 基础.
ContextCookie cookie 相关.
ContextDynamic 动态参数.
ContextFile 文件相关.
ContextGet 只包括 GET.
ContextHeader ..
ContextHook 钩子,一般用于中间件中.
ContextPost 包括 POST, PUT, PATCH.
ContextQuery 包括 GET, POST, PUT.
ContextWrite 响应相关.
Group 组路由,相同前缀的一组路由,共享相同的中间件.
RouteNode 一颗基数树的一个节点.
RouteNodeInternal 内部使用的一些接口.
Router 路由管理器.
RouterRegister 路由注册相关接口.
Server http 服务器.
Writer 实现 http.ResponseWriter.
# Type aliases
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author