2017-02-22 11 views
0

В последнее время я пытаюсь создать приложение для входа на сайт HTTPS и сохранить некоторую информацию с этого сайта. Я попытался использовать библиотеку Volley, но по некоторым причинам куки-файлы не были сохранены, поэтому я не смог войти в систему. Я также понял, что DefaultHttpClient устарел. Итак, каковы лучшие библиотеки/способы поддержки HTTPS для входа на сайт из приложения?Каков наилучший способ входа в систему и обмена информацией с https-сайтом из вашего приложения для Android?

+0

Использовать библиотеку достройки .. https://square.github.io/retrofit/ –

ответ

0

Я бы использовал Jsoup, с ним вы можете легко получить доступ к документу и извлечь информацию.

Вызов будет выглядеть

//With this you login and a session is created 
    Connection.Response res = Jsoup.connect("http://techmvs.technion.ac.il:80/cics/wmn/wmngrad?aapmlkwi&ORD=1&s=1") 
     .data("username", "myUsername", "password", "myPassword") 
     .method(Method.POST) 
     .execute(); 

//This will get you cookies 
Map<String, String> loginCookies = res.cookies(); 

//Here you parse the page that you want. Put the url that you see when you have logged in 
Document doc = Jsoup.connect("urlYouNeedToBeLoggedInToAccess") 
     .cookies(loginCookies) 
     .get(); 

Как вы можете видеть, вы можете получить доступ к куки и использовать их, чтобы открыть запретную URL. Пример берется с Stackoverflow.

0

Использовать retrofit-2 и Ion или Loop j, что бы ни было легко для вас, но помните, что эта библиотека не предоставляется Google, но залп - это библиотека Google, поэтому она не будет оплачиваться, но эта сторонняя библиотека может быть больна будущее.

По-другому, эта библиотека обеспечивает много хорошей и простой работы с лучшей производительностью, такой как повторная попытка, кеширование и т. Д. , поэтому прямо сейчас вы можете использовать, но не для будущего.

Смежные вопросы