0

Всем привет, заранее благодарю за ответы. Подскажите как лучше из файла применять cookies к leaf.xnet. Сейчас я применяю их этим кодом

string name = ""; string value = ""; string domain = ""; string path = "";
request.Cookies.Add(cookie);

Можно получать name, value и тому подобное через json но проблема в том что у cookies бывают разные имена заголовков например "domain": ".google.com", или "Host raw": "http://.google.com/" Хотя этот один и тот же параметр, а имена разные. Вот полный код как сделал сейчас, но это не корректно работает.

public void Cookies_Json(HttpRequest request, string Cookies_Json)
        {
            string name = ""; string value = ""; string domain = ""; string path = "";
            string objectJsonFile = File.ReadAllText(Cookies_Json);
            int pars = objectJsonFile.Split(':').Length;
            string temp_cookies = "";
            string[] result = Regex.Split(objectJsonFile, @"\""(.*?)\""",
                                   RegexOptions.IgnoreCase,
                                   TimeSpan.FromMilliseconds(500));
            for (int ctr = 0; ctr < result.Length; ctr++)
            {
                string exist = result[ctr].Replace(",", "");
                if (exist.Contains("ame") || exist.Contains("AME"))
                { name = result[ctr]; temp_cookies = name + ":"; }
                if (exist.Contains("value") || exist.Contains("Content"))
                { value = exist; temp_cookies += value + ":"; }
                if (exist.Contains("Path") || exist.Contains("path"))
                { path = exist; temp_cookies += path + ":"; }
                if (exist.Contains("domain") || exist.Contains("Host"))
                { domain = exist; temp_cookies += domain; }
                try
                {
                    if (name.Split(':')[1].Length > 0 && value.Split(':')[2].Length > 0 && path.Split(':')[3].Length > 0 && domain.Split(':')[4].Length > 0)
                    {
                        var cookie = new Cookie(name, value, path, domain);
                        try
                        {
                            request.Cookies.Add(cookie);
                        }
                        catch { }
                    }
                }
                catch { }
            }
        }
xellan
  • 23
  • Предпочитаю голый и нативный HttpClient, там не надо писать такой жестокий код для работы с куками, вообще никаких строковых операций с куками не нужно, только сериализация и обратно. – aepot May 29 '22 at 00:09
  • @aepot на HttpClient проблематично поставить прокси socks5, мне больше leaf.xnet нравится. Для меня в ней удобнее работать, каждому свое же) – xellan May 29 '22 at 03:44
  • Нормально socks5 там работает. – aepot May 29 '22 at 07:02

0 Answers0