如何在 filter rest api jersey 中获取 cookie

How to get cookie in filter rest api jersey

我在 Rest API 请求中从客户端发送 cookie,我想在过滤器上阅读。我在过滤器上使用这段代码来检索 cookie。

Map<String, Cookie> cookies  = requestContext.getCookies();
Cookie cookie = cookies.get("token");
String token = cookie.getValue();

但它 returns 无效。谁能建议我如何在过滤器上检索 cookie。

为了检索您的 cookie,您应该执行以下操作:

for (Cookie c : requestContext.getCookies().values()) 
{
    if (c.getName().equals("token")) {
        cookie = c;
        break;
    }
}

老实说,我不知道为什么你不能通过它的键检索你的 cookie,因为 ContainerRequestContext documentation 指出 getCookies returns cookie 名称(字符串)到 Cookie 的只读映射。