Fengling Gateway - 网关
职责分离: - Middleware: 负责 JWT 验证、TenantId 验证、设置 ClusterId 和 TenantId 到 HttpContext.Items - Transform: 负责从数据库查询 Destination 并设置 ProxyRequest.RequestUri 修改内容: 1. TenantRoutingMiddleware: - 添加设置 TenantId 到 HttpContext.Items 供 Transform 使用 - 修复服务名提取正则表达式,支持连字符(-)和下划线(_) - 更新 XML 文档,明确职责分离说明 2. TenantRoutingTransform: - 添加 ExtractTenantId 方法,优先从 HttpContext.Items 获取 TenantId - 保留从 JWT 提取作为回退机制 3. 单元测试: - 新增职责分离验证测试 (ShouldNotSetDestinationUri, ShouldOnlySetClusterIdAndTenantId) - 新增与 Transform 协作测试 (ShouldSetItemsForTransformConsumption) - 更新服务名提取测试,支持更多字符类型 - 总测试数: 24个,全部通过 |
||
|---|---|---|
| .gitea/workflows | ||
| .planning | ||
| k8s/base | ||
| logs | ||
| sql | ||
| src | ||
| tests | ||
| tools/MigrationTool | ||
| .gitignore | ||
| Directory.Build.props | ||
| Dockerfile | ||
| MigrationTask.sln | ||
| NuGet.Config | ||
| YarpGateway.slnx | ||
| 网关配置的新想法.md | ||