跳到主要内容
版本:3.0.0

上下文

这页对应的是 3.x 里的运行时请求上下文能力,核心组件是 上下文(Aegis.Context)

先理解边界

当前这套“上下文”主要解决的是请求级元信息访问,不是完整的用户会话体系。
最常见的可读信息包括:

  • 请求标识 RequestId
  • 客户端 IP
  • User-Agent
  • 可透传的业务请求头

如果你要解决的是“当前用户是谁、拥有哪些权限”,应该继续看认证和鉴权组件,而不是只看这一页。

最常见的读取方式

var requestId = ActionContext.Current.RequestId;
var ipAddress = ActionContext.Current.IpAddress;
var headers = ActionContext.Current.Headers;

什么时候适合用

  • 给日志补充请求标识
  • 读取业务 Header
  • 做链路问题排查
  • 在服务层获取当前请求来源信息

什么时候不适合用

  • 想获取当前登录用户完整身份时
  • 想跨请求保存业务状态时
  • 代码根本不在 HTTP 请求链路内时

推荐阅读顺序

  1. 先看 基础设施(Aegis.Core.Infrastructure),理解 ActionContext.Current 是怎么被初始化的
  2. 再看 上下文(Aegis.Context),掌握可读取的数据范围
  3. 如果需要用户身份和权限,再继续看 基础授权