Categorygithub.com/zerogo-hub/zero-api
modulepackage
0.20.8
Repository: https://github.com/zerogo-hub/zero-api.git
Documentation: pkg.go.dev

# README

zero-api

小巧的 api

主要文件

  • app.go 应用,负责整合ServerRouter
  • 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 不匹配

中间件

共有三种,添加方式如下

  • 应用级别中间件,作用在所有路由中
  • 组路由级别中间件,作用在该组路由中
  • 路由级别中间件,作用在当前路由中

# Packages

No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author

# 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