C# 如何在C web API中检测当前浏览器和设备?

C# 如何在C web API中检测当前浏览器和设备?,c#,asp.net-web-api,browser-detection,C#,Asp.net Web Api,Browser Detection,我正在尝试使用C web API在我的程序中检测当前的web浏览器和移动设备PC 无论我看到哪里,人们都说使用Request.Browser,但我无法让它工作。 有什么建议或是我忽略了什么 谢谢 Request.Headers.UserAgent 这可能是你最好的选择。它不会直接为您提供浏览器,而且很容易操作。但是从用户代理可能有一些库来获取浏览器 这可能是你最好的选择。它不会直接为您提供浏览器,而且很容易操作。但是从用户代理可能有一些库来获取浏览器。试试这个 var deviceType

我正在尝试使用C web API在我的程序中检测当前的web浏览器和移动设备PC

无论我看到哪里,人们都说使用Request.Browser,但我无法让它工作。 有什么建议或是我忽略了什么

谢谢

Request.Headers.UserAgent  
这可能是你最好的选择。它不会直接为您提供浏览器,而且很容易操作。但是从用户代理可能有一些库来获取浏览器

这可能是你最好的选择。它不会直接为您提供浏览器,而且很容易操作。但是从用户代理可能有一些库来获取浏览器。

试试这个

var deviceType=HttpContext.Current.Request.UserAgent

试试这个


var deviceType=HttpContext.Current.Request.UserAgent

请不要这样做。现代浏览器在不断变化和发展。任何基于您目前知道的特定浏览器的正确或错误的决定在您发布代码时都将过时。改用特征检测,它依赖于检测浏览器的当前特征。也就是说,许多网站对IE支持的内容做出了错误的假设,这就是IE11完全更改其用户代理字符串以尝试使用浏览器规避网站的原因detection@Damien_The_Unbeliever真正地它是ShocK@BugFinder当我使用其他设备phone、pad调用webapi时,它显示未知。我该怎么办?我已经看到了用户代理头包含未知的任何设备。你在什么设备上测试?请不要。现代浏览器在不断变化和发展。任何基于您目前知道的特定浏览器的正确或错误的决定在您发布代码时都将过时。改用特征检测,它依赖于检测浏览器的当前特征。也就是说,许多网站对IE支持的内容做出了错误的假设,这就是IE11完全更改其用户代理字符串以尝试使用浏览器规避网站的原因detection@Damien_The_Unbeliever真正地它是ShocK@BugFinder当我使用其他设备phone、pad调用webapi时,它显示未知。我该怎么办?我已经看到了用户代理头包含未知的任何设备。你们测试的是什么设备?当我使用其他设备phone、pad调用webapi时,它显示未知。我该怎么做?当我使用其他设备电话、pad调用webapi时,它显示未知。我该怎么做?当我使用其他设备电话、pad调用webapi时,它显示未知。我怎么办?你不能。如果设备没有发送该信息或其他识别自身的标题,API就不可能知道它是什么设备。当我使用其他设备phone、pad调用webapi时,它显示Unknown。我怎么办?你不能。如果设备没有发送该信息或其他标识自身的头,API就不可能知道它是什么设备。