/ / Web scrape след основно вход за автентификация - android, ssl, jsoup, basic-authentication

Изтриване на уеб след основно вход за автентификация - android, ssl, jsoup, basic-authentication

Трябва да изстържа съдържанието зад страница, която има http автентичност. Също така сайтът има ssl. Какво писах досега:

Document document = Jsoup.connect("https://someuser:somepassword@somedomain.com").get();

Но това не работи. Изпробван също:

Document document = Jsoup
.connect("https://somedomain.com").get();
.header("Authorization", "Basic " + base64login)
.get();

Къде е base64login:

 private String title;
String username = "someuser";
String password = "somepass";
String login = username + ":" + password;
public String base64login = Base64.encodeToString(login.getBytes(), Base64.DEFAULT);

Не знам как да го накарам да работи. Може ли някой да ми помогне?

Отговори:

1 за отговор № 1

Без URL адреса е трудно да се знае, но предполагам, че кодирането по подразбиране на Charset не съвпада с това, което уеб сървърът очаква. Може би опитайте това:

public String base64login = new String(
Base64.encodeBase64(login.getBytes(Charset.forName("utf-8")))
);

Това използва методите org.apache.commons.codec.binary.Base64.

Влизането трябва да се извърши, както сте опитвали във втория си подход, т.е. с "Authorization" глава. BTW - имаш грешка там в кода си. Най- header метод трябва да бъде извикан преди get и няма точка след запетая connect.