Как получить куки и опубликовать его при отправке HTTP-запроса на вход в систему в Java - PullRequest
0 голосов
/ 08 июня 2019

Я пытаюсь автоматизировать процесс входа в систему с помощью HTTPURLConnection (java), но при создании запроса HTTP POST мне нужно также отправлять файлы cookie ... но как получить эти файлы cookie для отправки

, я сначала сделал запрос на получениеhttp запрос на этот URL-адрес входа в систему и попытался получить все поля заголовка, но оттуда я также не получаю куки

    HttpURLConnection urlConnection = null;

    try {

        urlConnection = (HttpURLConnection) instaL.openConnection();
        urlConnection.setRequestMethod("GET");
        urlConnection.setRequestProperty("Host","www.instagram.com");
        urlConnection.setRequestProperty("User-Agent","Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:67.0) Gecko/20100101 Firefox/67.0");
       urlConnection.setRequestProperty("Accept","text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8");
       urlConnection.setRequestProperty("Accept-Language","en-US,en;q=0.5");
       urlConnection.setRequestProperty("Enocding","gzip, deflate, br");
       urlConnection.setRequestProperty("Connection","keep-alive");
       urlConnection.setRequestProperty("Upgrade-Insecure-Requests","1");

       urlConnection.connect();

        Map<String, List<String>> header = urlConnection.getHeaderFields();
        for (Map.Entry<String,List<String>> entry : header.entrySet()) {
            String key = entry.getKey();
            List<String> value = entry.getValue();
            System.out.println("-------------Key "+key);
            for (String string : value){
                System.out.println("value = "+value);
            }
        }


    } catch (Exception e) {
        System.out.println("Exception "+e.toString());
    }

}

я не получаю куки, как получить его, чтобы я мог использовать его и опубликовать вPOST запрос на вход

1 Ответ

0 голосов
/ 08 июня 2019

Вы можете сделать следующим образом.

Если вы отправляете только один файл cookie, вы должны сделать это, как указано ниже.

String cookie = "cookieName=cookieValue";
urlConnection.setRequestProperty("Cookie", myCookie); 

Если вы отправляете несколько файлов cookie, вам нужно сделать следующее.

urlConnection.setRequestProperty("Cookie", "name1=value1; name2=value2");
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...