【问题标题】:Check if Browser Exists in ASP.NET检查浏览器是否存在于 ASP.NET 中
【发布时间】:2012-05-10 21:14:31
【问题描述】:

我正在尝试编写一个 Web 应用程序,如果请求来自浏览器,则生成一个文件,但如果它来自另一个来源(例如,Windows 服务访问该站点以检索响应)它只会返回生成的响应。

这行得通吗?

if (Request.Browser == null)
{
    Response.Write(response);
}
else
{
    Response.Write("You're in a browser. Go Away.");
}

【问题讨论】:

  • 你试过看看是否有效吗?
  • 不知道如何在没有浏览器的情况下访问网站进行测试。

标签: c# asp.net httprequest user-agent


【解决方案1】:

这取决于您希望它有多安全/可靠。假设您可以控制 Windows 服务,一个简单的方法是让它指定一个特定的用户代理字符串。那么像这样的简单检查就足够了:

if (Request.UserAgent == "MyWindowsService")
{
    Response.Write(response);
}
else
{
    Response.Write("You're in a browser. Go Away.");
}

【讨论】:

  • 谢谢罗伯!我无法控制服务,但我能够以不同的方式解决问题(通过一起删除此要求:P)。
猜你喜欢
  • 2014-08-07
  • 2013-05-29
  • 1970-01-01
  • 2019-12-30
  • 2012-03-01
  • 2011-01-27
  • 2018-04-12
  • 2011-10-21
相关资源
最近更新 更多