zoukankan      html  css  js  c++  java
  • ASP.NET获取客户端IP地址、系统版本、浏览器版本

    转自:  http://blog.sina.com.cn/s/blog_40d62aad0100hjic.html

    //获取浏览器版本号
        public string getBrowser() {
            string browsers;
            HttpBrowserCapabilities bc = HttpContext.Current.Request.Browser;
            string aa = bc.Browser.ToString();
            string bb = bc.Version.ToString();
            browsers = aa + bb;
            return browsers;
        }
        //获取客户端IP地址
        public string getIP()
        {
            string result = String.Empty;
            result = HttpContext.Current.Request.ServerVariables["HTTP_X_FORWARDED_FOR"];
            if (null == result || result == String.Empty)
            {
                result = HttpContext.Current.Request.ServerVariables["REMOTE_ADDR"];
            }
            if (null == result || result == String.Empty)
            {
                result = HttpContext.Current.Request.UserHostAddress;
            }
            if (null == result || result == String.Empty)
            {
                return "0.0.0.0";
            }
            return result;
        }
        //获取操作系统版本号
        public static string SystemCheck()
        {
            string Agent = HttpContext.Current.Request.ServerVariables["HTTP_USER_AGENT"];

            if (Agent.IndexOf("NT 4.0") > 0)
            {
                return "Windows NT ";
            }
            else if (Agent.IndexOf("NT 5.0") > 0)
            {
                return "Windows 2000";
            }
            else if (Agent.IndexOf("NT 5.1") > 0)
            {
                return "Windows XP";
            }
            else if (Agent.IndexOf("NT 5.2") > 0)
            {
                return "Windows 2003";
            }
            else if (Agent.IndexOf("NT 6.0") > 0)
            {
                return "Windows Vista";
            }
            else if (Agent.IndexOf("WindowsCE") > 0)
            {
                return "Windows CE";
            }
            else if (Agent.IndexOf("NT") > 0)
            {
                return "Windows NT ";
            }
            else if (Agent.IndexOf("9x") > 0)
            {
                return "Windows ME";
            }
            else if (Agent.IndexOf("98") > 0)
            {
                return "Windows 98";
            }
            else if (Agent.IndexOf("95") > 0)
            {
                return "Windows 95";
            }
            else if (Agent.IndexOf("Win32") > 0)
            {
                return "Win32";
            }
            else if (Agent.IndexOf("Linux") > 0)
            {
                return "Linux";
            }
            else if (Agent.IndexOf("SunOS") > 0)
            {
                return "SunOS";
            }
            else if (Agent.IndexOf("Mac") > 0)
            {
                return "Mac";
            }
            else if (Agent.IndexOf("Linux") > 0)
            {
                return "Linux";
            }
            else if (Agent.IndexOf("Windows") > 0)
            {
                return "Windows";
            }
            return "未知类型";

        }

    给梦想一点时间
  • 相关阅读:
    面试题:增强一个对象的方法的三种方式
    Spring笔记01_下载_概述_监听器
    mybatis笔记02
    mybatis笔记01
    muduo学习笔记(二)Reactor关键结构
    Muduo学习笔记(一) 什么都不做的EventLoop
    一个linux下简单的纯C++实现Http请求类(GET,POST,上传,下载)
    一个轻巧高效的多线程c++stream风格异步日志(二)
    一个轻巧高效的多线程c++stream风格异步日志(一)
    C++智能指针,指针容器原理及简单实现(auto_ptr,scoped_ptr,ptr_vector).
  • 原文地址:https://www.cnblogs.com/VortexPiggy/p/2950227.html
Copyright © 2011-2022 走看看