第 52 章 获取和使用上下文信息


摘要

上下文信息包括资源 URI、HTTP 标头和其他无法使用其他注入注解的详细信息。Apache CXF 提供特殊的类,将所有可能的上下文信息放入单个对象。

52.1. 上下文简介

上下文注解

您可以使用 javax.ws.rs.core.Context 注释来指定上下文信息要注入到字段或资源方法参数中。注解某个上下文类型的字段或参数将指示运行时将适当的上下文信息注入注释的字段或参数。

上下文类型

表 52.1 “上下文类型” 列出可以注入的上下文信息的类型,以及支持它们的对象。

表 52.1. 上下文类型
对象上下文信息

UriInfo

完整请求 URI

HttpHeaders

HTTP 消息标头

Request(请求)

可用于确定最佳表示变体或确定是否设置了一组条件的信息

securityContext

有关请求者安全的信息,包括正在使用的身份验证方案,如果请求频道安全,以及用户原则

可以使用上下文信息的位置

上下文信息可用于 JAX-RS 应用程序的以下部分:

  • 资源类
  • 资源方法
  • 实体供应商
  • 例外映射器

影响范围

使用 @Context 注释注入的所有上下文信息都特定于当前请求。在所有情况下,包括实体供应商和异常映射程序都是如此。

添加上下文

JAX-RS 框架允许开发人员扩展可以使用上下文机制注入的信息类型。您可以通过实施 Context<T> 对象并使用运行时注册来添加自定义上下文。

Red Hat logoGithubRedditYoutubeTwitter

学习

尝试、购买和销售

社区

关于红帽文档

通过我们的产品和服务,以及可以信赖的内容,帮助红帽用户创新并实现他们的目标。

让开源更具包容性

红帽致力于替换我们的代码、文档和 Web 属性中存在问题的语言。欲了解更多详情,请参阅红帽博客.

關於紅帽

我们提供强化的解决方案,使企业能够更轻松地跨平台和环境(从核心数据中心到网络边缘)工作。

© 2024 Red Hat, Inc.