当前位置: 首页 > 知识库问答 >
问题:

如何使用ContainerRequestContext从HTTP请求获取JSESSIONID?

阎经武
2023-03-14
Accept=application/json
Accept-Encoding=gzip
deflate,Accept-Language=en-us
Connection=keep-alive
Content-Length=0
Content-Type=application/json
Cookie=JSESSIONID=ss0ox8w99o9142b73rssvc0r
Host=localhost:8080
User-Agent=NFA_QA/34 CFNetwork/720.5.7 Darwin/14.5.0 (x86_64)
@Override
public void filter(final ContainerRequestContext requestContext) throws IOException {
    System.out.println("***HEADER VALUE**: " + requestContext.getHeaderString("Cookie"));
}
JSESSIONID=zv71od6l2fd41hv6yf0980khy
@Override
public void filter(final ContainerRequestContext requestContext) throws IOException {
    Map<String, javax.ws.rs.core.Cookie> clientCookie = requestContext.getCookies();
    System.out.println("Client Cookie Map: " + clientCookie);
}

得到的结果为:

Clinet Cookie Map: {JSESSIONID=JSESSIONID=1of1x5u1s1l4hdxfg2azlep42}

从请求中提取jsessionid的最佳方法是什么?

共有1个答案

陶涵育
2023-03-14

首先,REST和会话标识符在同一句话中听起来不太好。

REST中的S表示无状态和无状态。在REST应用程序中,会话状态必须由客户端管理,而不是由服务器管理。因此,不能有任何会话标识符。

更多信息,看看这里和这里。

Cookie cookie = requestContext.getCookies().get("JSESSIONID");
String value = cookie.getValue();
 类似资料:
  • 问题内容: 我正在使用python中的请求库发出HTTP请求,但我需要来自响应http请求的服务器的IP地址,因此,我试图避免进行两次调用(可能与响应的IP地址不同)请求。 那可能吗?是否有任何python http库允许我这样做? ps:我还需要发出HTTPS请求并使用经过身份验证的代理。 更新1: 例: 然后,我想知道响应中的方法或属性将哪些IP地址请求连接到了。在其他库中,我可以通过找到袜子

  • 本文向大家介绍php如何获取Http请求,包括了php如何获取Http请求的使用技巧和注意事项,需要的朋友参考一下 php获取Http请求的方法 $_SERVER介绍 $_SERVER是一个包含了诸如头信息(header)、路径(path)、以及脚本位置(script locations)等等信息的数组。 获取Http请求的方法示例 实例补充: socket方式 使用套接字建立连接,拼接 HTTP

  • 问题内容: 我正在尝试让我的函数返回http get请求,但是,无论如何,它似乎在?scope中丢失了。我对Node.js不熟悉,因此不胜感激 问题答案: 当然,您的日志会返回:您在完成请求之前先进行日志。问题不是范围,而是 异步性 。 是异步的,这就是为什么它将回调作为参数的原因。做您在回调中要做的事情(传递给的):

  • 问题内容: 我注意到某些站点的IP命中率有限,因此我可以通过编程使他们感到请求不是来自同一IP的, 好吧,我不太确定abot HTTP数据包,但是我们可以在标头或某个地方指定它以使其变得愚蠢吗? 这是GET请求的代码 问题答案: 我猜想该过滤器是在IP数据包级别而不是更高级别的HTTP级别应用的。在这种情况下, 是和否 。 是的-从技术上来说,可以欺骗您的IP地址,以便IP数据包看起来像来自其他地

  • 问题内容: 我现在正在尝试使用Java Cord中的HTTP请求获取JSON对象。 我想知道如何在下面的代码中获取响应或JSON对象。 请告诉我。 (在此程序中,我尝试获取文章“ New York”的Wikipedia类别。) 问题答案:

  • 我想创建一个API,为了验证API使用者,我将提供一个API密钥、应用id和应用机密。问题是,我想知道http请求来自哪里,这样我就可以知道发出que请求的主机是否是注册主机。例如:www.someone。com的应用程序id为0001,应用程序机密为1200,api密钥为458。如果此凭据用于发出请求,我想知道请求者是否真的是www.someone。通用域名格式