There are a number of ways to gather information about your user's browser, and there are a number of reasons you may want to. Some sites may have content that requires Internet Explorer only, or requires at least version 4.0 of either Netscape or IE. In either case, there are a number of techniques you can use to obtain browser information. In this article we'll examine four methods:
- Using client-side script
- Using the User-Agent server variable
- Using the Browser Capabilities component
- Using a third-party program
Using Client-Side Script
navigator object reveals information about the user's browser. There
are a number of properties for thie
navigator object, the important ones being:
appName returns the
name of the browser (such as "Microsoft Internet Explorer");
returns the version of the browser; and
platform returns the user's platform ("Win16", "Win32", etc.).
The output of this code can be seen below:
You can then make a decision on where to redirect the user based on this information. For example, say that you had both a Netscape-friendly site and an IE-friendly site. To accomplish this, you could use code like:
Using the User-Agent Server Variable
When a browser makes a request to a Web page on a server, it sends along with that request a number of headers, commonly referred to as request headers, or HTTP headers. (For more information on HTTP headers, be sure to check out: Accessing HTTP Headers and Environment Variables!) One of these headers is the User-Agent header, which is a string containing detailed information about the visitor's browser version and type. To display this HTTP header from an ASP page, simply use the following code:
The output of the above code can be seen below:
Note that this string is overflowing with information, as you can probably tell. It may seem hard to pick out the browser type, a quick check for the characters "MSIE" should let us know if it's Internet Explorer or not.
Clearly these first two methods (client-side script and the User-Agent string) are really poor ways for determining a user's browser and version. They're quick and efficient, but you cannot obtain any sort of detailed information without picking through these strings and extracting various bits of information. In Part 2 we'll examine two other approaches, ones that offer much more detailed information about the user's browser in an easier-to-obtain format.