使用用户名和密码发送POST请求并保存会话cookie

在使用用户名和密码发送POST请求后,如何使用Jsoup保存cookie? 或者我必须首先将它们提供给连接对象然后保存?

假设HTML表单如下所示:

你可以发布它并获得如下cookie:

 Response response = Jsoup.connect("http://example.com/login") .method(Method.POST) .data("username", username) .data("password", password) .data("login", "Login") .execute(); Map cookies = response.cookies(); Document document = response.parse(); // If necessary. // ... 

您可以在后续请求中传回cookie,如下所示:

 Document document = Jsoup.connect("http://example.com/user") .cookies(cookies) .get(); // ... 

或者,如果您知道单个cookie名称:

 Document document = Jsoup.connect("http://example.com/user") .cookie("SESSIONID", cookies.get("SESSIONID")) .get(); // ...