Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > C/C++ программирование > Общие вопросы C/C++
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 08.05.2011, 13:53   #1
bohdan09
 
Аватар для bohdan09
 
Регистрация: 18.11.2010
Сообщений: 5
По умолчанию Авторизация на ВК с получением id

Доброго времени суток пользователи cyberforum!
Решил научится создавать ботов для приложений вконтакте.
Нашел статью по программной регистрации вконтакте на C# и столкнулся с проблемой - Как получить id?.
Внизу приводится C#-листинг.
Заранее благодарен=)
Код:
using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Windows.Forms;
using System.Net;
using System.IO;
using System.Text.RegularExpressions;

namespace Launcher
{
    public partial class Form1 : Form
    {
        string sid;
        Cookie cook;
        public Form1()
        {
            InitializeComponent();
        }

        private void button1_Click(object sender, EventArgs e)
        {
            //создаем запрос
            HttpWebRequest wrGETURL = (HttpWebRequest)System.Net.WebRequest.Create("http://vkontakte.ru/login.php?m=1&email=" + textBox1.Text + "&pass=" + textBox2.Text);
            //выставляем значения Headers
            //Запрещаем редирект
            wrGETURL.AllowAutoRedirect = false;
            //Выставляем таймаут
            wrGETURL.Timeout = 100000;
            //получаем Headers,пришедшие в ответе
            string headers = wrGETURL.GetResponse().Headers.ToString();
            //получаем весь ответ
            HttpWebResponse myHttpWebResponse = (HttpWebResponse)wrGETURL.GetResponse();
            //записываем ответ в поток
            StreamReader myStreamReadermy = new StreamReader(myHttpWebResponse.GetResponseStream(), Encoding.GetEncoding(1251));
            //запихиваем ответ в строку
            string page = myStreamReadermy.ReadToEnd();
            //это регулярное выражение,которое выдирает из переменной headers(а ее мы получили выше) значение sid
            Regex sidregex = new Regex("sid=([a-z0-9]+); exp");
            Match ssid = sidregex.Match(headers);
            sid = ssid.Groups[1].Value;
            //инициализируем куки
            cook = new Cookie("remixsid", sid);
            //тоже самое,куки пишем
            cook.Domain = "vkontakte.ru";
            //проверяем,получили ли мы нужную переменную в куки
            if (String.IsNullOrEmpty(sid))
                MessageBox.Show("Чето не получается авторизироваться");
            else
                MessageBox.Show("Успешно авторизировались");
        }
    }
}
bohdan09 вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Обычная авторизация или авторизация на уровне браузера? calugin Безопасность, Шифрование 0 13.01.2011 00:34
Проблема с получением страницы lukinjj PHP 2 18.07.2010 21:03
Проблема с получением имени zumm Общие вопросы Delphi 3 14.05.2010 13:06
Проблемы с получением страницы Kottik Работа с сетью в Delphi 15 18.09.2009 00:24
WinSock Проблеммы с получением AngelOfDeath Работа с сетью в Delphi 2 19.01.2009 02:30