如何使用 java 维护状态 Jersey 客户端

How to Maintain state Jersey Client Using java

如何维护状态 Jersey Client

    { //
      //      Some session logic 
      //
     } 
        Client client = ClientBuilder.newClient();
        WebTarget baseTarget =
        client.target("https");
        /
        MultivaluedMap<String, String> formData = new 
        MultivaluedHashMap<String, String>();
        formData.add("usr", "@gmail.com");
        formData.add("pwd", "mat");
        Response response = baseTarget.request().post(Entity.form(formData))  
        System.out.println("----Second-time--method invoked GET-------");

        Response resp_sec = base2Target.request().get(); //second time in session perform action client side

看看这个 Helps.This 代码是否为我提供了一个 template.hope 它适合你。

您首先需要从初始响应中获取 cookie。这些将是 NewCookie 个实例,它们是服务器发送给客户端的 cookie,如 Set-Cookie headers。在客户端,您需要将 Cookie 发送回服务器,这将导致发送 Cookie header。如果您尝试在客户端上设置 NewCookie,它会设置 Set-Cookie header,这是错误的。您只需调用 newCookie.toCookie()

即可轻松地将 NewCookie 转换为 Cookie
Map<String, NewCookie> cookies = response.getCookies();
Invocation.Builder ib = baseTarget.request();
for (NewCookie cookie: cookies.values()) {
    ib.cookie(cookie.toCookie());
}
Response response = ib.get();

另请参阅: