我正在制作WPF应用程序,用户在其中登录并存储其令牌。关闭应用程序并重新打开之后,如果令牌(存储为cookie)存在于我分配的文件夹目录中,则将其提取并显示在MessageBox
中。
但是,当我手动在分配的目录中选中“隐藏文件”复选框时,我看不到它。我的cookie是保存在硬盘驱动器上还是实际上存储在Visual Studio中,直到我将该项目发布为可执行文件为止?
我的商店Cookie功能是:
private void StoreToken(string token)
{
Console.WriteLine("Value being stored in Cookie: " + token);
Uri cookie = new Uri(@"C:\Program Files\WPFCookie");
Application.SetCookie(cookie, (token + ";expires=Sat, 22-Sep-2018"));
}
我的查找Cookie函数是:
public string RequestToken()
{
try
{
Uri cookiePath = new Uri(@"C:\Program Files\WPFCookie");
string response = Application.GetCookie(cookiePath);
return response;
}
catch (Exception)
{
string response;
response = "null";
return response;
}
}
在我的MainWindow方法中调用了Find Cookie方法
public MainWindow()
{
string cookie = requests.RequestToken();
System.Windows.MessageBox.Show(cookie);
}
我不明白的是,如果我将cookiePath
中的RequestToken()
更改为与存储它的路径不同的路径,它仍然会返回cookie,这在我看来是不可能的将其保存到其他路径。另外,我似乎在任何地方都找不到该文件。这怎么可能?
答案 0 :(得分:1)
Cookie路径不是保存Cookie的位置!这是Cookie的名称。
永久性cookie存储在当前Windows安装目录中 Internet临时文件夹,直到它们过期,在这种情况下,它们 被删除。您可以从应用程序中删除永久性cookie 通过将其到期日期设置为过去的日期/时间值。