c# - .NET Request Browser identifies Opera as Chrome -
so in code have:
return request.browser.browser + " " + request.browser.majorversion
when user opera, i've had version 21 , latest version 33, code returns chrome. returned "chrome 34" opera 21, , "chrome 46" opera 33.
why happening , how fix it?
the user agent strings chrome , opera exact same. end differs.
i'm using opera version 33.0.1990.58 , chrome version 46.0.2490.86.
here'r user agents each:
chrome 46 = mozilla/5.0 (windows nt 6.1; wow64) applewebkit/537.36 (khtml, gecko) chrome/46.0.2490.86 safari/537.36
opera 33 = mozilla/5.0 (windows nt 6.1; wow64) applewebkit/537.36 (khtml, gecko) chrome/46.0.2490.80 safari/537.36 opr/33.0.1990.58
in microsoft.net/framework/yourversion/config/browsers can see xml shows .net how parse agent strings. chrome.browser identification is: in .net 4.0.
in same directory, opera.browser identification looks like: /" />.
so opera shows chrome because .net doesn't know better sine opera user agent doesn't fit regex .net looking for.
Comments
Post a Comment