用于 HTTPS 抓取的 Jsoup Cookie
我正在尝试使用此网站在欢迎页面上收集我的用户名来学习 Jsoup 和 Android。使用以下代码
Connection.Response res = Jsoup.connect("http://www.mikeportnoy.com/forum/login.aspx")
.data("ctl00$ContentPlaceHolder1$ctl00$Login1$UserName", "username", "ctl00$ContentPlaceHolder1$ctl00$Login1$Password", "password")
.method(Method.POST)
.execute();
String sessionId = res.cookie(".ASPXAUTH");
Document doc2 = Jsoup.connect("http://www.mikeportnoy.com/forum/default.aspx")
.cookie(".ASPXAUTH", sessionId)
.get();
我的 cookie (.ASPXAUTH) 始终以 NULL 结束。如果我在网络浏览器中删除此 cookie,我就会失去连接。所以我确信这是正确的 cookie。此外,如果我更改代码
.cookie(".ASPXAUTH", "jkaldfjjfasldjf") Using the correct values of course
,我可以从此页面抓取我的登录名。这也让我认为我拥有正确的 cookie。那么,为什么我的 cookie 会出现 Null 呢?我的用户名和密码姓名字段是否不正确?还有别的事吗?
谢谢。
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(3)
我知道我来晚了 10 个月。但是使用 Jsoup 的一个不错的选择是使用这段简单的代码:
虽然我在连接某些网站时仍然遇到问题,但我使用相同的基本代码连接到很多网站。哦,在我忘记之前..我认为我的问题是 SSL 证书。你必须以一种我还不太明白的方式正确地管理它们。
I know I'm kinda late by 10 months here. But a good option using Jsoup is to use this easy peasy piece of code:
Though I'm still having trouble connection to SOME websites, I connect to a whole lot of them with the same basic piece of code. Oh, and before I forget.. What I figured my problem is, is SSL certificates. You have to properly manage them in a way I still haven't quite figured out.
我总是分两步执行此操作(像普通人一样),
示例:
并且始终使用
SSL 从上一个请求到下一个请求设置 cookie 不是这里很重要。如果您的证书有问题,请执行此方法以忽略 SSL。
I always do this in two steps (like normal human),
Example:
And always set cookies from previuos request to next using
SSL is not important here. If you have problem with certifcates then execute this method for ignore SSL.
如果您尝试获取并传递所有 cookie,而不做如下假设,会怎么样: 发送使用用户名和密码进行 POST 请求并保存会话 cookie
如果您仍然遇到问题,请尝试查看此内容:将 cookie 传递给 GET 请求(POST 之后)的问题< /a>
What if you try fetching and passing all cookies without assuming anything like this: Sending POST request with username and password and save session cookie
If you still have problems try looking in to this: Issues with passing cookies to GET request (after POST)