Documentation
¶
Index ¶
- func AuthMiddleware(logger *zap.Logger, jwtMgr *auth.Manager, next http.Handler) http.Handler
- func ClaimsFromContext(ctx context.Context) *auth.JWTClaims
- func RecoveryMiddleware(logger *zap.Logger, next http.Handler) http.Handler
- func RequestIDFromContext(ctx context.Context) string
- func RequestIDMiddleware(logger *zap.Logger, next http.Handler) http.Handler
- type CProxy
- type LLMTarget
- type SProxy
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
func AuthMiddleware ¶
AuthMiddleware 验证请求头 X-PairProxy-Auth 中的 JWT,提取 claims 写入 context。 验证失败返回 401,通过后继续处理。
func ClaimsFromContext ¶
ClaimsFromContext 从 context 中取 JWT claims。
func RecoveryMiddleware ¶
RecoveryMiddleware 捕获 panic,返回 500,避免进程崩溃。
func RequestIDFromContext ¶
RequestIDFromContext 从 context 中取 request_id。
Types ¶
type CProxy ¶
type CProxy struct {
// contains filtered or unexported fields
}
CProxy c-proxy 核心处理器。
type SProxy ¶
type SProxy struct {
// contains filtered or unexported fields
}
SProxy s-proxy 核心处理器
func NewSProxy ¶
func NewSProxy( logger *zap.Logger, jwtMgr *auth.Manager, writer *db.UsageWriter, targets []LLMTarget, ) (*SProxy, error)
NewSProxy 创建 SProxy。 targets 至少需要一个 LLM 后端。
func NewSProxyWithCluster ¶
func NewSProxyWithCluster( logger *zap.Logger, jwtMgr *auth.Manager, writer *db.UsageWriter, targets []LLMTarget, clusterMgr *cluster.Manager, sourceNode string, ) (*SProxy, error)
NewSProxyWithCluster 创建带集群管理器的 SProxy(sp-1 模式)。
func (*SProxy) Handler ¶
Handler 构建并返回完整的 s-proxy HTTP 处理链:
RecoveryMiddleware → RequestIDMiddleware → AuthMiddleware → [QuotaMiddleware] → SProxyHandler
func (*SProxy) HealthHandler ¶
func (sp *SProxy) HealthHandler() http.HandlerFunc
HealthHandler 返回 s-proxy 健康检查处理器,供 /health 注册使用。
func (*SProxy) SetQuotaChecker ¶
SetQuotaChecker 设置配额检查器(可选;设置后每次请求前检查配额)。
Click to show internal directories.
Click to hide internal directories.