我正在尝试使用此网站在欢迎页面上收集我的用户名来学习 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 呢?我的用户名和密码姓名字段是否不正确?还有别的事吗?
Thanks.
我知道我来晚了 10 个月。但是使用 Jsoup 的一个不错的选择是使用这段简单的代码:
//This will get you the response.
Response res = Jsoup
.connect("url")
.data("loginField", "[email protected]", "passField", "pass1234")
.method(Method.POST)
.execute();
//This will get you cookies
Map<String, String> cookies = res.cookies();
//And this is the easieste way I've found to remain in session
Documente doc = Jsoup.connect("url").cookies(cookies).get();
尽管我在连接某些网站时仍然遇到问题,但我使用相同的基本代码连接到了很多网站。哦,在我忘记之前..我认为我的问题是 SSL 证书。你必须以一种我还不太明白的方式正确地管理它们。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)