0
我正在尝试访问成功登录后的网站,但出现错误。我发现,我没有得到任何的cookie从Connection.Response
获取会话ID cookie是在用jsoup登录到网站后创建的
Connection.Response loginForm = Jsoup.connect(LOGIN_URL)
.userAgent("Mozilla/5.0 (Windows NT 6.1; WOW64; rv:45.0) Gecko/20100101 Firefox/45.0")
.method(Connection.Method.GET)
.timeout(3000)
.execute();
System.out.println(loginForm.cookies());
Document login = Jsoup.connect(LOGIN_URL)
.userAgent("Mozilla/5.0 (Windows NT 6.1; WOW64; rv:45.0) Gecko/20100101 Firefox/45.0")
.data("email", email)
.data("password", password)
.cookies(loginForm.cookies())
.timeout(3000)
.post();
登录文件返回正确的网站,所以登录成功。我使用谷歌浏览器开发工具(Google Chrome network screenshot)分析了这个过程。那就是我发现LOGIN_URL与Connection.Response
和Document
相同。我也很确定,表单只需要电子邮件和密码,没有其他隐藏的输入(尽管不能给你提供链接)。我还可以发现在登录后创建了一个cookie(会话ID)。
System.out.println(loginForm.cookies());
什么也没有返回({}
),所以我不能使用loginForm.cookies()
作进一步的使用。如果有办法从POST获取cookie,这将是最佳选择。
有没有办法获得会话ID cookie或其他方式来解决我的问题?
谢谢