 Documentation
      ¶
      Documentation
      ¶
    
    
  
    
  
    Index ¶
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
func GetHandlerFuncName ¶
func GetHandlerFuncName(h http.HandlerFunc, seps ...rune) string
GetHandlerFuncName 通过反射获取函数名称
Types ¶
type Auther ¶
type Auther interface {
	Auth(req *http.Request, entry httppb.Entry) (authInfo interface{}, err error)
}
    Auther 设置受保护路由使用的认证器 Header 用于鉴定身份 Entry 用于鉴定权限
type AutherFunc ¶
The AutherFunc type is an adapter to allow the use of ordinary functions as Auther handlers. If f is a function with the appropriate signature, AutherFunc(f) is a Handler that calls f.
type Middleware ¶
Middleware 中间件的函数签名
type MiddlewareFunc ¶
MiddlewareFunc is an adapter to allow the use of ordinary functions as Negroni handlers. If f is a function with the appropriate signature, HandlerFunc(f) is a Handler object that calls f.
type ResourceRouter ¶
ResourceRouter 资源路由
type Router ¶
type Router interface {
	// 添加中间件
	Use(m Middleware)
	// 是否启用用户身份验证
	Auth(isEnable bool)
	// 是否启用用户权限验证
	Permission(isEnable bool)
	// 允许target标识
	Allow(targets ...fmt.Stringer)
	// 是否开启审计日志
	AuditLog(isEnable bool)
	// 是否需要NameSpace
	RequiredNamespace(isEnable bool)
	// 添加受认证保护的路由
	Handle(method, path string, h http.HandlerFunc) httppb.EntryDecorator
	// 开始认证时 使用的认证器
	SetAuther(Auther)
	// 开始审计器, 记录用户操作
	SetAuditer(Auditer)
	// 实现标准库路由
	ServeHTTP(http.ResponseWriter, *http.Request)
	// 获取当前的路由条目信息
	GetEndpoints() *httppb.EntrySet
	// EnableAPIRoot 将服务路由表通过路径/暴露出去
	EnableAPIRoot()
	// 设置路由的Logger, 用于Debug
	SetLogger(*zerolog.Logger)
	// SetLabel 设置路由标签, 作用于Entry上
	SetLabel(...*httppb.Label)
	// 子路由
	SubRouter(basePath string) SubRouter
}
    Router 路由
type SubRouter ¶
type SubRouter interface {
	// 是否启用用户身份验证
	Auth(isEnable bool)
	// 是否启用用户权限验证
	Permission(isEnable bool)
	// 允许target标识
	Allow(targets ...fmt.Stringer)
	// 是否开启审计日志
	AuditLog(isEnable bool)
	// 是否需要NameSpace
	RequiredNamespace(isEnable bool)
	// 添加中间件
	Use(m Middleware)
	// SetLabel 设置路由标签, 作用于Entry上
	SetLabel(...*httppb.Label)
	// With独立作用于某一个Handler
	With(m ...Middleware) SubRouter
	// 添加受认证保护的路由
	Handle(method, path string, h http.HandlerFunc) httppb.EntryDecorator
	// ResourceRouter 资源路由器, 主要用于设置路由标签和资源名称,方便配置灵活的权限策略
	ResourceRouter(resourceName string, labels ...*httppb.Label) ResourceRouter
}
    SubRouter 子路由或者分组路由
 Click to show internal directories. 
   Click to hide internal directories.