Как работать с Cookie?

У меня есть 3000 строк Cookies, взял я их с браузера FireFox с помощи расширения, что бы попробовать авторизоваться в разных сервисах.

Перевел я 3000 строк в формат netscape из json, после загружаю их в ContainerCookie и отправляю их в запрос HttpWebRequest. Пытаюсь войти в Gmail, и не получается, перебрасывает на страницу с авторизацией.

Может дело все в размере? Или там есть какие то куки которые присутствуют авторизации Gmail. Потому что эти же куки я опять загружаю в FireFox (через расширение) и у меня все работает, а через запрос HttpWebRequest не могу.

Вот мой код:

internal class Program
{

    public static List<String[]> GetCookieLines(String fileName)
    {

        List<String[]> cookieLines = new List<String[]>();
        using (FileStream fs = new FileStream(fileName, FileMode.Open))
        using (StreamReader rdr = new StreamReader(fs, Encoding.UTF8))
        {

            String line; // Создаем Strin Line. 
            while ((line = rdr.ReadLine()) != null)
            {
                String[] components = line.Split('\t');
                cookieLines.Add(components);
            }
        }

        return cookieLines;
    }

    static void Main(string[] args)
    {
        CookieContainer cookieContainer = new CookieContainer();
        Console.WriteLine("Введите путь к кукам");
        string d = Console.ReadLine();

        List<String[]> list = new List<string[]>();

        list = GetCookieLines(d);



        foreach (string[] p in list)
        {
            cookieContainer.Add(new Cookie(p[5].Replace(",", "%2C"), p[6].Replace(",", "%2C"), "/", p[0].Replace(",", "%2C")));

            Console.WriteLine(p[0] + "|" + p[1] + "|" + p[2]);
        }
       

        HttpWebRequest request = (HttpWebRequest)HttpWebRequest.Create("https://mail.google.com/mail/u/0/#inbox");
        
        request.CookieContainer = cookieContainer; // В request ложим куки. 
        HttpWebResponse response = (HttpWebResponse)request.GetResponse();

        using (Stream stream = response.GetResponseStream())
        {
            using (StreamReader reader = new StreamReader(stream))
            {
                string line = ""; 
                while ((line = reader.ReadLine()) != null)
                {
                    File.AppendAllText("C:/Users/kusch/Desktop/Новая папка" + "/" + "resilt.txt", line);
                }
            }
        }

        Console.ReadKey();
    }

}

Ответы (0 шт):