我创建了一个代码来检查浏览器是否只能在 Google Chrome 上访问并限制 Mozilla Firefox。例如,我使用 Android 手机,我希望仅使用 Google Chrome 授予访问权限,并且如果 iPhone 或 iPad Google Chrome 有权访问该网站。但当检查浏览器是 Chrome 还是 Mozilla 时,它被视为 Safari。使用C#工具。因此,我会调查是否有一个独特的属性很好用,但遗憾的是没有。是否有一个好的插件或库或框架来检测 iphone 或 android 浏览器。谢谢。
这是针对谷歌浏览器的。
var userAgent = filterContext.HttpContext.Request.UserAgent?.ToLowerInvariant() ?? "";
"mozilla/5.0 (iphone; cpu iphone os 9_1 like mac os x) applewebkit/601.1.46 (khtml, like gecko) version/9.0 mobile/13b143 safari/601.1"
var userBrowser = filterContext.HttpContext.Request.Browser.Browser?.ToLowerInvariant() ?? "";
"safari"
var userBrowserTypeype = filterContext.HttpContext.Request.Browser.Type;
"Safari9"
var userBrowserVersion = filterContext.HttpContext.Request.Browser.Version;
"9.0"
var userBrowserMajorVersion = filterContext.HttpContext.Request.Browser.MajorVersion;
"9"
var userBrowserMinorVersion = filterContext.HttpContext.Request.Browser.MinorVersion;
0
var userBrowserPlatform = filterContext.HttpContext.Request.Browser.Platform;
"Unknown"
var userBrowserBeta = filterContext.HttpContext.Request.Browser.Beta;
false
var userBrowserCrawler = filterContext.HttpContext.Request.Browser.Crawler;
false
var userAol = filterContext.HttpContext.Request.Browser.AOL;
false
var userBrowserWin16 = filterContext.HttpContext.Request.Browser.Win16;
false
var userBrowserWin32 = filterContext.HttpContext.Request.Browser.Win32;
false
var userBrowserFrames = filterContext.HttpContext.Request.Browser.Frames;
true
var usBrowserTables = filterContext.HttpContext.Request.Browser.Tables;
true
var userBrowserCookies = filterContext.HttpContext.Request.Browser.Cookies;
true
var userBrowserVbScript = filterContext.HttpContext.Request.Browser.VBScript;
false
这是针对 Mozilla Firefox 的。
var userAgent = filterContext.HttpContext.Request.UserAgent?.ToLowerInvariant() ?? "";
"mozilla/5.0 (iphone; cpu iphone os 10_2_1 like mac os x) applewebkit/602.4.6 (khtml, like gecko) version/10.0 mobile/14d27 safari/602.1"
var userBrowser = filterContext.HttpContext.Request.Browser.Browser?.ToLowerInvariant() ?? "";
"safari"
var userBrowserTypeype = filterContext.HttpContext.Request.Browser.Type;
"Safari10"
var userBrowserVersion = filterContext.HttpContext.Request.Browser.Version;
"10.0"
var userBrowserMajorVersion = filterContext.HttpContext.Request.Browser.MajorVersion;
"10"
var userBrowserMinorVersion = filterContext.HttpContext.Request.Browser.MinorVersion;
0
var userBrowserPlatform = filterContext.HttpContext.Request.Browser.Platform;
"Unknown"
var userBrowserBeta = filterContext.HttpContext.Request.Browser.Beta;
false
var userBrowserCrawler = filterContext.HttpContext.Request.Browser.Crawler;
false
var userAol = filterContext.HttpContext.Request.Browser.AOL;
false
var userBrowserWin16 = filterContext.HttpContext.Request.Browser.Win16;
false
var userBrowserWin32 = filterContext.HttpContext.Request.Browser.Win32;
false
var userBrowserFrames = filterContext.HttpContext.Request.Browser.Frames;
true
var usBrowserTables = filterContext.HttpContext.Request.Browser.Tables;
true
var userBrowserCookies = filterContext.HttpContext.Request.Browser.Cookies;
true
var userBrowserVbScript = filterContext.HttpContext.Request.Browser.VBScript;
false
这可能是因为 iOS 不允许 Safari 以外的其他浏览器引擎。
遗憾的是,这迫使 Chrome 应用程序使用 Safari 的网络浏览器组件和用户代理。
阅读更多关于它在这里 https://www.howtogeek.com/184283/why-third-party-browsers-will-always-be-inferior-to-safari-on-iphone-and-ipad/
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)