我正在尝试编写一个Web应用程序,如果请求来自浏览器,它将生成一个文件,但是如果它来自另一个源(例如,Windows服务击中网站以获取响应),它只会返回生成的响应。检查浏览器是否存在于ASP.NET中
会这样吗?
if (Request.Browser == null)
{
Response.Write(response);
}
else
{
Response.Write("You're in a browser. Go Away.");
}
我正在尝试编写一个Web应用程序,如果请求来自浏览器,它将生成一个文件,但是如果它来自另一个源(例如,Windows服务击中网站以获取响应),它只会返回生成的响应。检查浏览器是否存在于ASP.NET中
会这样吗?
if (Request.Browser == null)
{
Response.Write(response);
}
else
{
Response.Write("You're in a browser. Go Away.");
}
这取决于你希望它有多安全/可靠。假设你可以控制Windows服务,一个简单的方法是让它指定一个特定的用户代理字符串。然后这样一个简单的检查就足够了:
if (Request.UserAgent == "MyWindowsService")
{
Response.Write(response);
}
else
{
Response.Write("You're in a browser. Go Away.");
}
谢谢Rob!我无法控制服务,但是我能够以不同的方式解决问题(将所有这些要求一并删除:P)。 – brazilianldsjaguar
很高兴你解决了! –
你试过看看它是否有效? –
不知道如何在没有浏览器的情况下击中网站进行测试。 – brazilianldsjaguar