Bal*_*usC 36
使用HTTP基本访问身份验证,您需要发送Authorization标头以及值"Basic " + base64encode("username:password").
例如(在Apache Commons Codec Base64的帮助下):
String username = "foo";
String password = "bar";
String login = username + ":" + password;
String base64login = new String(Base64.encodeBase64(login.getBytes()));
Document document = Jsoup
.connect("http://example.com")
.header("Authorization", "Basic " + base64login)
.get();
// ...
Run Code Online (Sandbox Code Playgroud)
(getBytes()为简洁起见,省略了字符编码的明确规范,因为登录名和传递通常都是普通US-ASCII的;此外,Base64总是生成US-ASCII字节)
//Log in
Response res = Jsoup
.connect("url")
.data("loginField", "login")
.data("passwordField", "password")
.method(Method.POST)
.execute();
Document doc = res.parse();
//Keep logged in
Map<String, String> cookies = res.cookies();
Document doc2 = Jsoup
.connect("url")
.cookies(cookies)
.get();
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
22738 次 |
| 最近记录: |