Сделать подряд два запроса на один сайт - C#

Узнай цену своей работы

Формулировка задачи:

Всем привет. Задача такая, сделать подряд два запроса на один сайт. Только после первого запроса - сайт вернет куки, как повторить запрос второй раз уже с теми куками? можете пример кода дать, я только начал изучать c# , вот как делаю первый запрос
            HttpWebRequest request = (HttpWebRequest)WebRequest.Create(url);
            request.UserAgent = "Mozilla/5.0 (Windows NT 6.1; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/40.0.2214.115 Safari/537.36";
            request.Accept = "text/html,application/xhtml+xml,application/xml;q=0.9,image/webp,*/*;q=0.8";
            request.Host = "api.solvemedia.com";
            request.KeepAlive = true;
            request.Headers.Add ("AcceptLanguage: ru-RU,ru;q=0.8,en-US;q=0.6,en;q=0.4");
            HttpWebResponse response = (HttpWebResponse)request.GetResponse();

Решение задачи: «Сделать подряд два запроса на один сайт»

textual
Листинг программы
using System;
using System.Net;
using System.Net.Http;
 
namespace ConsoleApplication1
{
    class Program
    {
        static void Main()
        {
            var container = new CookieContainer();
            using (var handler = new HttpClientHandler {CookieContainer = container})
            {
                using (var client = new HttpClient(handler) { BaseAddress = new Uri("http://www.yandex.ru/") })
                {
                    client.DefaultRequestHeaders.TryAddWithoutValidation("User-Agent", "Mozilla/5.0 (Windows NT 6.1; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/40.0.2214.115 Safari/537.36");
                    client.DefaultRequestHeaders.TryAddWithoutValidation("Accept", "text/html,application/xhtml+xml,application/xml;q=0.9,image/webp,*/*;q=0.8");
 
                    var res = client.GetStringAsync("").Result;
                    Console.WriteLine("Response length = {0}", res.Length);
 
                    Console.WriteLine("\nReceived cookies:\n");
                    foreach (Cookie cookie in container.GetCookies(client.BaseAddress))
                    {
                        Console.WriteLine("{0} - {1}", cookie.Name, cookie.Value);
                    }
                }
            }
        }
    }
}

ИИ поможет Вам:


  • решить любую задачу по программированию
  • объяснить код
  • расставить комментарии в коде
  • и т.д
Попробуйте бесплатно

Оцени полезность:

9   голосов , оценка 3.889 из 5
Похожие ответы