Всем привет, заранее благодарю за ответы. Подскажите как лучше из файла применять 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 { }
}
}
HttpClient, там не надо писать такой жестокий код для работы с куками, вообще никаких строковых операций с куками не нужно, только сериализация и обратно. – aepot May 29 '22 at 00:09