我如何使用ASP.NET来检查是否在没有网页的情况下启用了Cookie

本文关键字:网页 情况下 启用 Cookie ASP 何使用 NET 是否 检查 | 更新日期: 2023-09-27 18:01:15

我正在开发一个桌面应用程序,该应用程序可以自动化许多网站并处理返回的数据。此应用程序将在服务器上运行,用户将连接到远程桌面。当服务器没有启用cookie时,自动化就会中断,我不想让应用程序停止工作,而是想检查服务器设置,告诉用户它为什么不工作。

为此,我决定创建一个ASP。NET Web服务。我认为web服务可以存储cookie,然后尝试访问数据。如果找到了数据,就会启用cookie,一切都很好。

我读过很多教程,比如:http://www.csharphelp.com/2006/05/c-and-cookies/解释了如何通过ASP存储和访问cookie。NET。然而,所有这些都使用一个网站。用户单击按钮生成请求,然后web服务可以发送响应。我不知道如何在没有网站的情况下让这个过程发挥作用,我也不想自动化我自己的网站。我觉得我应该能够在我的Web服务上运行一个方法,它应该可以工作。

有人知道怎么做吗?我想要一个可以处理请求和响应的Web服务,这样我就可以创建、存储和访问cookie。我感谢你所能提供的任何帮助。

Nathan Tornquist

编辑:

我正在开发一个数据库驱动的应用程序。其中一些是自动网站,用户在其中输入一些数据,然后程序打开一个webBrowser控件,填写表单,然后格式化生成的数据。我想测试是否根据用户的安全权限启用了cookie,这样我就可以禁用自动化,并允许用户在需要时自行填写数据。大多数网站都需要Cookie才能登录。

这将在不同版本的Windows Server上运行。默认情况下,我认为webBrowser控件具有与Internet Explorer相同的安全设置。

我如何使用ASP.NET来检查是否在没有网页的情况下启用了Cookie

var request = (HttpWebRequest)WebRequest.Create("http://stackoverflow.com/");
request.Method =  "Head";
var response = (HttpWebResponse)request.GetResponse();
var usesCookies = !String.IsNullOrEmpty(response.Headers["Set-Cookie"]);

您可以在注册表中验证这些密钥:

HKEY_LOCAL_MACHINE''SOFTWARE''Microsoft''Windows''CurrentVersion''Internet Settings''Zones
HKEY_CURRENT_USER''SOFTWARE''Microsoft''Windows''CurrentVersion''Internet Settings''Zones

在这些键下,您可能会看到一些键,如0、1、2、3。。。每个都是一个区域配置。

在每个区域中搜索这些条目:

1A02
1A03
1A05
2006年1月1日

因此,您必须验证这些条目的值是否等于0。

查看这些链接:

ms-kb
问题