Форум программистов, компьютерный форум, киберфорум
C# для начинающих
Войти
Регистрация
Восстановить пароль
Карта форума Темы раздела Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.63/8: Рейтинг темы: голосов - 8, средняя оценка - 4.63
0 / 0 / 0
Регистрация: 12.05.2012
Сообщений: 6
1

Как добраться до кук в Response

09.06.2012, 17:41. Показов 1475. Ответов 1
Метки нет (Все метки)

Author24 — интернет-сервис помощи студентам
Друзья, помогите.
Не могу понять, пытаюсь написать авторизацию на Odnoklassniki и почему-то у меня возвращаются пустые cookies, хотя сниффер при дебаге кода показывает, что идет set-cookie в response.

HTTP/1.1 302 Moved Temporarily
Server Apache-Coyote/1.1
Set-Cookie AUTHCODE=qlitxcyrmcmxbdqvoxh_qqevgahtkgsyyujooui_qosdfregdgdnqedlnwr; Domain=.odnoklassniki.ru; Expires=Mon, 09-Jul-2012 09:12:58 GMT; Path=/
Set-Cookie JSESSIONID=""; Domain=.odnoklassniki.ru; Expires=Thu, 01-Jan-1970 00:00:10 GMT; Path=/
Set-Cookie JSESSIONID=874ad2041besfsd83be9ea1298fe4429b8736cef8b4fec1cb.b12608cb; Path=/
Set-Cookie LASTSRV=www.odnoklassniki.ru; Domain=.odnoklassniki.ru; Path=/
P3P CP="NOI DSP COR CUR OUR NOR"
Set-Cookie BANNER_LANG=ru; Path=/
Set-Cookie tDisc=true
Set-Cookie tNotif=true
Set-Cookie tOFNE=true
Set-Cookie tNotifEv=true
Location http://www.odnoklassniki.ru/
Content-Length 0
Date Sat, 09 Jun 2012 09:12:58 GMT
X-Charles-Received-Continue HTTP/1.1 100 Continue
Cама функция:
C#
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
private string post(string URL, string Post, string kuki, int v_needChkSessId,Encoding codepage)
        {
            string html = string.Empty; //создаем пустую переменную
            HttpWebResponse response = null; //Пустой объект класса респонс - отпраки запроса и получения ответа
            try
            {
                String secondStepForm = Post;//Пост-параметры все в эту переменную идут
                HttpWebRequest request = (HttpWebRequest)WebRequest.Create(URL);//создаем запрос
        CookieContainer cc = new CookieContainer();
                request.CookieContainer = cc;
                request.Headers.Add(HttpRequestHeader.Cookie, kuki);
                request.Proxy.Credentials = CredentialCache.DefaultCredentials; 
                request.UserAgent = "Opera/9.80";
                request.Proxy = WebRequest.DefaultWebProxy;
                request.Method = "POST";
                request.ContentType = "application/x-www-form-urlencoded";
                byte[] EncodedPostParams = Encoding.ASCII.GetBytes(secondStepForm);
                request.ContentLength = EncodedPostParams.Length;
                request.GetRequestStream().Write(EncodedPostParams, 0, EncodedPostParams.Length);
                request.GetRequestStream().Close();
                response = (HttpWebResponse)request.GetResponse();//отправляем запрос
                // Print the properties of each cookie.
                foreach (Cookie cook in response.Cookies)
                {
                    if (cook.Name == "JSESSIONID")
                    {
                        vSessionid = cook.Value;
                    }
                }
                html = new StreamReader(response.GetResponseStream(), codepage).ReadToEnd();//получаем ответ
        }
            catch { }
            return html;
       }
Как считать правильно эти куки? В остальных случаях у меня все работает, а тут на отрез response.Cookies.Count = 0

Добавлено через 2 часа 38 минут
Решение - выставить параметр request.AllowAutoRedirect = false;
0
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
09.06.2012, 17:41
Ответы с готовыми решениями:

Свойства Response.Expires = 60 Response.Expiresabsolute = Now() - 1 Response.AddHeader 'pragma','no-cache' Response.AddHeader 'cache-control','p
Нашел в Инете строчки для запрета буфиризации и кэширования страници бравзером Response.Expires =...

Проблема с загрузкой файла response.ContentType = 'text/plain' Response.Addheader 'Content-disposition', 'attachment; filename=export.txt'
Есть файл, который содержит response.ContentType = 'text/plain' Response.Addheader...

Не выполняется Response.Redirect: Response object error 'ASP 0156 : 80004005' Header Error
Вот такая вот ошибка на простой вызов редиректа на вполне доступный адрес. что бы это могло быть? ...

Как добраться до MySql?
Люди, может кто подскажет, как из Делфи можно послать запрос к базе данных MySql? Есть ли для этого...

1
18 / 17 / 2
Регистрация: 11.01.2013
Сообщений: 109
12.01.2013, 08:24 2
Так и остался человек без ответа. Чувствую, что я тоже буду запинаться с авторизацией на клашках. Эх..
0
12.01.2013, 08:24
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
12.01.2013, 08:24
Помогаю со студенческими работами здесь

Как добраться до MySql?
Люди, может кто подскажет, как из Делфи можно послать запрос к базе данных MySql? Есть ли для этого...

как добраться до вершины ?
Привет ! Подскажите ,что нужно сделать что бы сайт http://empiredelgusto.narod.ru оказался на...

Как добраться до пиксилей?
Есть изображение , и мне его по сути надо перегнать в массив для сканировки. В какую сторону...

Как добраться к элементу
Привет всем! Есть система переписки на php + mySql + jQuery Проблема вот в чем: Нужно...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
2
Ответ Создать тему
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2024, CyberForum.ru