Files
kami_itunes_june/DotNet.Utilities/HttpCookieHelper.cs
2024-07-22 00:43:14 +08:00

57 lines
1.3 KiB
C#

using System;
using System.Collections.Generic;
using System.Text.RegularExpressions;
namespace DotNet.Utilities
{
public static class HttpCookieHelper
{
public static List<CookieItem> GetCookieList(string cookie)
{
List<CookieItem> list = new List<CookieItem>();
string[] array = cookie.Split(new string[2] { ";", "," }, StringSplitOptions.RemoveEmptyEntries);
foreach (string input in array)
{
if (Regex.IsMatch(input, "([\\s\\S]*?)=([\\s\\S]*?)$"))
{
Match match = Regex.Match(input, "([\\s\\S]*?)=([\\s\\S]*?)$");
list.Add(new CookieItem
{
Key = match.Groups[1].Value.Trim(),
Value = match.Groups[2].Value.Trim()
});
}
}
return list;
}
public static string CookieFormatByReustCookie(string cookie)
{
GetCookieList(cookie);
string text = "";
foreach (CookieItem cookie2 in GetCookieList(cookie))
{
text += CookieFormat(cookie2.Key, cookie2.Value);
}
return text;
}
public static string GetCookieValue(string Key, string cookie)
{
foreach (CookieItem cookie2 in GetCookieList(cookie))
{
if (cookie2.Key == Key)
{
return cookie2.Value;
}
}
return "";
}
public static string CookieFormat(string key, string value)
{
return $"{key}={value};";
}
}
}