@rinatsakaev

Как авторизоваться в VK на Java без браузера?

Доброго времени суток, господа.
Использую HttpClient 4.5.1, пытаюсь авторизоваться в VK, отправляя на login.vk.com/?act=login пост-запрос с параметрами:
email
pass
ip_h
lg_h
Выглядит так:
HttpPost httpPostVk= new HttpPost("http://login.vk.com/?act=login");
        List<NameValuePair> formparamsVk=new ArrayList<NameValuePair>();
        formparamsVk.add(new BasicNameValuePair("email","******"));
        formparamsVk.add(new BasicNameValuePair("pass","*******"));
       formparamsVk.add(new BasicNameValuePair("ip_h",getIp_h()));
        formparamsVk.add(new BasicNameValuePair("lg_h",getLg_h()));
        UrlEncodedFormEntity entity2 = new UrlEncodedFormEntity(formparamsVk, Consts.UTF_8);
        httpPostVk.setEntity(entity2);
        HttpResponse response = httpclient.execute(httpPostVk);
        Header[] headers= response.getAllHeaders();
        for (int i=0;i<headers.length;i++) System.out.print(headers[i]+"\r\n");

На выходе получаю:
Server: Apache
Date: Tue, 24 Nov 2015 14:13:59 GMT
Content-Type: text/html; charset=windows-1251
Connection: keep-alive
X-Powered-By: PHP/3.19062
Set-Cookie: remixlang=0; expires=Mon, 14 Nov 2016 17:40:33 GMT; path=/; domain=.vk.com
Pragma: no-cache
Cache-control: no-store
P3P: CP="IDC DSP COR ADM DEVi TAIi PSA PSD IVAi IVDi CONi HIS OUR IND CNT"
Location: http://vk.com/login.php?&to=&s=0&m=1&email=

По идее, должен возвращаться редирект с хешем, но вместо этого получается так, будто логин или пароль неверны.
Видимо, не отправляю какой-то дополнительный параметр. Что не так?
  • Вопрос задан
  • 3967 просмотров
Решения вопроса 1
mourr
@mourr
Passionate JS developer
https://oauth.vk.com/token?grant_type=password&client_id=2274003&client_secret=hHbZxrka2uZ6jB1inYsH&username=LOGIN&password=PASS


И получаете вечный токен доверенного приложения со всеми правами. Только тсс..
Ответ написан
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы