Форум программистов, компьютерный форум, киберфорум
C# для начинающих
Войти
Регистрация
Восстановить пароль
 
Рейтинг 4.86/7: Рейтинг темы: голосов - 7, средняя оценка - 4.86
1 / 1 / 0
Регистрация: 21.09.2013
Сообщений: 286
1

Как использовать куки, чтобы потом было можно их использовать в запросах

17.08.2014, 13:52. Просмотров 1443. Ответов 7
Метки нет (Все метки)

Скажите полажуйста! как добавить ! куки , чтобы потом было можно использовать в запросах! тоесть

C#
1
  public string Get(string url, Cook, bool Redirect = true)
Cook = чтобы принимало мое значение куков, и отправляло их!
0
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
17.08.2014, 13:52
Ответы с готовыми решениями:

Можно ли использовать куки, чтобы потом не вводить капчу?
ИСПОЛЬЗУЕТСЯ: С#, WebDriver (при необходимости) Хочу написать парсер, который будет скачивать...

Как можно определить переменную в файле configure.in,чтобы её можно было использовать в Makefile?
Ситуация такая - В проекте конфигуратор программы используется только для проверок на наличие...

Отредактировать программу exe, чтобы можно было использовать как dll
Есть проект на C++, который отображает спектрограмму звука на системном микшере (грубо говоря выход...

Как сделать, чтобы можно было использовать графический редактор WindowsForm?
Как сделать, чтобы можно было использовать графический редактор WindowsForm? Пишу на С++. В...

7
40 / 40 / 13
Регистрация: 09.07.2014
Сообщений: 116
17.08.2014, 14:38 2
создавай новый куки контейнер где-нибудь в классе
C#
1
CookieContainer cooks = new CookieContainer();
Потом даже без параметров метода просто привяжи его к запросу типа так:
C#
1
2
HttpWebRequest hRequest = (HttpWebRequest)WebRequest.Create(urlFormat);
            hRequest.CookieContainer = cooks;
Все, он сам будет перезаписываться каждый раз после ответа, и браться для запроса.
0
1 / 1 / 0
Регистрация: 21.09.2013
Сообщений: 286
17.08.2014, 14:43  [ТС] 3
Tirenta, смотри. я сделал так
[url]
[url]
Использую так, но куки во втором запросе не шлет!
[url]
0
40 / 40 / 13
Регистрация: 09.07.2014
Сообщений: 116
17.08.2014, 14:48 4
так ты в батнклике создаешь новый куки контейнер и передаешь его в параметре, соответственно созданный тобой в классе контейнер не используется.. Или я что-то упускаю?

Потом даже если у тебя получиться получить куки с сайта vk, ты эти куки пошлешь на второй сайт, так и задумано?
0
1 / 1 / 0
Регистрация: 21.09.2013
Сообщений: 286
17.08.2014, 14:50  [ТС] 5
нужно после каждого вопроса, получать куки! чтобы потом их использовать!
0
40 / 40 / 13
Регистрация: 09.07.2014
Сообщений: 116
17.08.2014, 14:52 6
у разных доменов разные куки, тебе нужно правильно сконструировать класс и создавать для каждого сайта новый экземпляр, опять же повторяю, нет никакой надобности что-то передавать из батона кроме самого сайта.. Пусть куки у тебя хранятся в самом классе.
0
1 / 1 / 0
Регистрация: 21.09.2013
Сообщений: 286
18.08.2014, 12:17  [ТС] 7
Как использовать куки, чтобы потом было можно их использовать в запросах


предыдущий запрос
http://socmoney.net/index.php // GET
Cookie: PHPSESSID=s1qjpr1u4t8hnq13tc3onfj8u7; ref=141826739 // Имеет куки!
следующий запрос
http://dokzona.ru/vk/index.php?auth=1 // В этот запрос не добавляет куки!


Вот код использования!
Как использовать куки, чтобы потом было можно их использовать в запросах


Вот сам код запроса
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
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
public string Get(string url, CookieContainer cookieCollection=null, bool Redirect = true, bool xml=false,string Refer=null)
      {
         string str = "error";
         try
         {  
            HttpWebRequest request = (HttpWebRequest)WebRequest.Create(url);  
            if (ProxyHTTP != null)
            {
               try
               {
                  string[] strArray = ProxyHTTP.Split(new [] { ':' });
                  request.Proxy = new WebProxy(strArray[0], Convert.ToInt32(strArray[1]));
               }
               catch
               {
                  MessageBox.Show("Proxy_Errol");
               }
            }
            if (xml)
            {
               request.Headers.Add("X-Requested-With: XMLHttpRequest"); 
            }
 
            if (!(Refer == null))
            {
               request.Referer = Referer;
            } 
 
            request.Method = "GET"; 
            request.Headers.Add(Accept_Language);
            request.UserAgent = UserAgent;
            request.Timeout = Time;
            request.CookieContainer = cookieCollection;
            request.KeepAlive = true;
            request.AllowAutoRedirect = Redirect;   
 
            using (Stream stream = request.GetResponse().GetResponseStream())
            {
               try
               {
                  GetZapros = request.RequestUri.ToString();
                  GetLocation = request.GetResponse().ResponseUri.ToString();
                  if (!(request.CookieContainer == null))
                  {
                     this.cookieCollection = request.CookieContainer; 
                  }
                 
               }
               catch
               {
               }
               str = new StreamReader(stream, Encoding.GetEncoding(1251)).ReadToEnd();
            }
            AbsoluteUri = request.Address.AbsoluteUri;
         }
         catch
         {
         }
         return str;
      }
0
Памирыч
22.08.2014, 09:05     Как использовать куки, чтобы потом было можно их использовать в запросах
  #8
 Комментарий модератора 
Закрыто
0
22.08.2014, 09:05
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
22.08.2014, 09:05
Привет! Вот еще темы с ответами:

Как правильно сохранить данные в таблицы, чтобы их сразу же можно было использовать?
Вообщем есть 2 таблицы, который созданы в локальной БД c#. Я открываю exe файл программы и в эти...

Как уничтожить объект, чтобы можно было вовторно использовать его имя?
В общем, пишу программу, которая сначала рисует красный квадрат по таймеру (сначала одну сторону,...

Как сделать так,чтобы можно было использовать одну переменную в разных формах?
Существует переменная score и надо,чтобы я мог хотя бы передавать значения этой переменной в другой...

Как сделать так, чтобы в терминале можно было использовать оба HASP ключа?
Всех с праздником) У меня вчера случилась такая проблема: есть сеть, сервер, к которому все...


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

Или воспользуйтесь поиском по форуму:
8
Закрытая тема Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2020, vBulletin Solutions, Inc.