Авторизация вконтакте

Discussion in 'С/С++, C#, Rust, Swift, Go, Java, Perl, Ruby' started by alenushka, 25 Oct 2009.

  1. alenushka

    alenushka Banned

    Joined:
    19 Oct 2009
    Messages:
    0
    Likes Received:
    0
    Reputations:
    0
    Всем привет.Кто может подкинуть код, как сейчас авторизоваться вконтакте через winsock?
     
  2. НTL

    НTL Elder - Старейшина

    Joined:
    26 Jan 2008
    Messages:
    715
    Likes Received:
    205
    Reputations:
    -26
    Зачем ВК если можно дурова

    Пиши в асю расскажу и покажу
     
  3. Gar|k

    Gar|k Moderator

    Joined:
    20 Mar 2009
    Messages:
    1,166
    Likes Received:
    266
    Reputations:
    82
    Вчера сидел писал код, но решил что проще и круче будет реализовать виджетом.
    Си получение странички контакта имея куку _http://c0dedgarik.blogspot.com/2009/10/blog-post_25.html#more
     
    _________________________
    1 person likes this.
  4. StalkerKill

    StalkerKill Elder - Старейшина

    Joined:
    27 Oct 2007
    Messages:
    0
    Likes Received:
    8
    Reputations:
    -1
    как сейчас проходит авторизация вконтакте?
    раньше было так: http://vkontakte.ru/login.php?email='+ваше мыло+'&pass='+ваш пароль
    а как сейчас? подскажите плиз
     
  5. Lexxx_

    Lexxx_ New Member

    Joined:
    2 Nov 2009
    Messages:
    1
    Likes Received:
    2
    Reputations:
    5
    Алгоритм такой примерно:
    Code:
    //sPage - ответ сервера
    URL = "http://vkontakte.ru/login.php"
    POST = "op=a_login_attempt"
    //Отправляем запрос
    
    while(sPage.Pos("captcha_sid"))
    {
    // Обработка капчи, пока не введем правильно
    }
    URL = "http://login.vk.com/?act=login"
    POST =     "success_url=&fail_url=&try_to_login=1&to=&email="+
            sLogin //логин
            + "&pass=" +
            sPassword //пароль
    //Отправляем запрос        
    if(sPage.Pos("id='s' value='"))
    {
    //после "id='s' value='" стоит параметр 's', его нужно спарсить в переменную S
    URL = "http://vkontakte.ru/login.php?op=slogin&redirect=1"
    POST  = "s=" + S
    //Отправляем запрос
    }
    else if(sPage.Pos("login.php?m="))
    {
    //Невалид. остановка потоков
    }
    else
    {
    //Ошибка. остановка потоков
    }
    
    if(sPage.Pos("Location: profile.php"))
    {
    //Авторизация пройдена
    }
    else if(sPage.Pos("failed"))
    {
    //Невалид. остановка потоков
    }
    else
    {
    //Ошибка. остановка потоков
    }
    
    //-----------------------
     
    2 people like this.
  6. Sokolik

    Sokolik Banned

    Joined:
    5 Mar 2009
    Messages:
    4
    Likes Received:
    1
    Reputations:
    0
    Сейчас этот способ так же работает, как и раньше 100%! Только что проверял.
     
  7. AquaKlaster

    AquaKlaster Active Member

    Joined:
    9 Mar 2009
    Messages:
    0
    Likes Received:
    204
    Reputations:
    23
    Да он то работает этот способ но там идёт редирект и что бы успешно авторизоватся нужно парсить со страницы еще данные.. и потом отправлять еще один пост запрос. На сколько я помню там 2-3 пост запроса
     
    1 person likes this.
  8. Sokolik

    Sokolik Banned

    Joined:
    5 Mar 2009
    Messages:
    4
    Likes Received:
    1
    Reputations:
    0
    Парсить ничего не надо. Кроме как подставить мы
    ло и пас больше ничего не требуется. Сам лично использую данный метод. Очень удобно, во-первых нет заморочек с парсингом, во-вторых данный способ работает уже более полугода точно, не смотря на то что несколько раз переделывали авторизацию ВК.