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

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

回答:

假设HTML表单如下所示:

<form action="http://example.com/login" method="post">

<input type="text" name="username" />

<input type="password" name="password" />

<input type="submit" name="login" value="Login" />

</form>

您可以发布它并获取cookie,如下所示:

Response response = Jsoup.connect("http://example.com/login")

.method(Method.POST)

.data("username", username)

.data("password", password)

.data("login", "Login")

.execute();

Map<String, String> 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();

// ...

以上是 使用用户名和密码发送POST请求并保存会话cookie 的全部内容, 来源链接: utcz.com/qa/424826.html

回到顶部