918博天堂

Server : Microsoft-IIS/10.0
System : Windows NT EBS-6136 10.0 build 17763 (Windows Server 2016) i586
User : jxgj ( 0)
PHP Version : 7.0.33
Disable Function : passthru,exec,system,shell_exec,proc_open,popen,pcntl_exec,socket_bind,stream_socket_server
Directory :  D:/tmp_aspnet/root/dc15253c/377bd30d/
Upload File :
Current Directory [ Writeable ] Root Directory [ Writeable ]


Current File : D:/tmp_aspnet/root/dc15253c/377bd30d/App_Web_7dsc66iy.15.cs
?#pragma checksum "D:\wwwroot\jmxbaogao\wwwroot\Counter\NewClicksCounter.ashx" "{406ea660-64cf-4c82-b6f0-42d48172a799}" "ACA32CAAB3719288E10286075C806B74"

#line 1 "D:\wwwroot\jmxbaogao\wwwroot\Counter\NewClicksCounter.ashx"


/****************************************
 * 版权所有:南昌金启软件有限公司
 * 网    址:www.21it.com
 ****************************************/
using System;
using System.Data;
using System.Net;
using System.Reflection;
using System.Text.RegularExpressions;
using System.Threading;
using System.Web;
using System.Web.Script.Serialization;
using Com.Huji.DataBll;
using Com.Huji.DataModel;
using Com.Huji.DataTools;
using Com.Huji.Web.Pager;

namespace Com.Huji.Web.Counter
{
    public class NewClicksCounter : BaseHandler
    {

        public override void ProcessRequest(HttpContext context)
        {
            context.Response.ContentType = "text/plain";
            try
            {
                if (!isValidIpAddess(Converts.GetClientIP))
                {
                    Logger.Error(GetType().FullName + "." + MethodBase.GetCurrentMethod().Name + ", 谬误原因: IP地址不合法");
                    return;
                }
                SysClicksData data = new SysClicksData();

                #region 得到IP地址信息 临时不用
                //string uri = @"http://ip.taobao.com/service/getIpInfo.php?ip=" + Converts.GetClientIP;
                //IPCheckResult result = Converts.SearilizeHelper.Deserialize<IPCheckResult>(ServletMgr.GetServletResult(uri));
                //if (result == null || result.code != 0)
                //{
                //    Logger.Error(GetType().FullName + "." + MethodBase.GetCurrentMethod().Name + ", 谬误原因: 没有地址");
                //}
                //else
                //{
                //    data.AreaId = Converts.ToInt32(result.data.region_id);
                //    data.AreaName = result.data.region;
                //    data.CityId = Converts.ToInt32(result.data.city_id);
                //    data.CityName = result.data.city;
                //    data.CountyId = Converts.ToInt32(result.data.county_id);
                //    data.CountyName = result.data.county;
                //}
                #endregion

                data.Ip = Converts.GetClientIP;

                try
                {
                    if (CookieUtil.GetCookie("UId") == null)
                        CookieUtil.SetCookie("UId", DateTime.Now.ToString("yyyyMMddHHmm") + Converts.GetRandom(16, true, true, true, false, ""), DateTime.Today.AddDays(86399F / 86400));
                    data.Cookie = CookieUtil.GetCookieValue("UId");
                }
                catch { }
                data.Url = context.Request.UrlReferrer.AbsoluteUri;
                new SysClicksBll().UpdateSysClicks(data, 0);

            }
            catch (Exception ex)
            {
                Logger.Error(GetType().FullName + "." + MethodBase.GetCurrentMethod().Name + ", 谬误原因: " + ex.Message);
            }


        }

        private bool isValidIpAddess(string ip)
        {
            string pattern = @"^((?:(?:25[0-5]|2[0-4]\d|((1\d{2})|([1-9]?\d)))\.){3}(?:25[0-5]|2[0-4]\d|((1\d{2})|([1-9]?\d))))$";

            return Regex.IsMatch(ip, pattern);
        }

        class IPCheckResult
        {
            public int code;
            public IPAdderssData data;
        }

        class IPAdderssData
        {
            public string country;
            public string country_id;
            public string area;
            public string area_id;
            public string region;
            public string region_id;
            public string city;
            public string city_id;
            public string county;
            public string county_id;
            public string isp;
            public string isp_id;
            public string ip;
        }
    }
}

#line default
#line hidden