zoukankan      html  css  js  c++  java
  • asp.net中获取当前url的方法

    ASP.NET以及JS获取URL和IP地址

    HttpContext.Current.Request.Url.ToString() 并不可靠。

    如果当前URL为
    http://localhost/search.aspx?user=http://csharp.xdowns.com&tag=%BC%BC%CA%F5

    通过HttpContext.Current.Request.Url.ToString()获取到的却是

    http://localhost/search.aspxuser=http://csharp.xdowns.com&tag=¼¼Êõ


    正确的方法是:HttpContext.Current.Request.Url.PathAndQuery1、通过ASP.NET获取
    如果测试的url地址是http://www.test.com/testweb/default.aspx, 结果如下:
    Request.ApplicationPath:                /testweb
    Request.CurrentExecutionFilePath      /testweb/default.aspx
    Request.FilePath:                       /testweb/default.aspx
    Request.Path:                           /testweb/default.aspx
    Request.PhysicalApplicationPath:        E:\WWW\testwebRequest.PhysicalPath:                   E:\WWW\testweb\default.aspx
    Request.RawUrl:                         /testweb/default.aspx
    Request.Url.AbsolutePath:               /testweb/default.aspx
    Request.Url.AbsoluteUrl:                http://www.test.com/testweb/default.aspx
    Request.Url.Host:                       http://www.test.com/
    Request.Url.LocalPath:                  /testweb/default.aspx

    2、通过JS获取

    <table width=100% cellpadding=0 cellspacing=0 border=0 >

    <script>

    thisURL = document.URL;

    thisHREF = document.location.href;

    thisSLoc = self.location.href;

    thisDLoc = document.location;

    strwrite = "<tr><td valign=top>thisURL: </td><td>[" + thisURL + "]</td></tr>"

    strwrite += "<tr><td valign=top>thisHREF: </td><td>[" + thisHREF + "]</td></tr>"

    strwrite += "<tr><td valign=top>thisSLoc: </td><td>[" + thisSLoc + "]</td></tr>"

    strwrite += "<tr><td valign=top>thisDLoc: </td><td>[" + thisDLoc + "]</td></tr>"

    document.write( strwrite );

    </script>

    thisDLoc = document.location; <BR>

    thisURL = document.URL; <BR>

    thisHREF = document.location.href; <BR>

    thisSLoc = self.location.href;<BR>

    <script>

    thisTLoc = top.location.href;

    thisPLoc = parent.document.location;

    thisTHost = top.location.hostname;

    thisHost = location.hostname;

    strwrite = "<tr><td valign=top>thisTLoc: </td><td>[" + thisTLoc + "]</td></tr>"

    strwrite += "<tr><td valign=top>thisPLoc: </td><td>[" + thisPLoc + "]</td></tr>"

    strwrite += "<tr><td valign=top>thisTHost: </td><td>[" + thisTHost + "]</td></tr>"

    strwrite += "<tr><td valign=top>thisHost: </td><td>[" + thisHost + "]</td></tr>"

    document.write( strwrite );

    </script>

    thisTLoc = top.location.href; <BR>

    thisPLoc = parent.document.location; <BR>

    thisTHost = top.location.hostname; <BR>

    thisHost = location.hostname;<BR>

    <script>

    tmpHPage = thisHREF.split( "/" );

    thisHPage = tmpHPage[ tmpHPage.length-1 ];

    tmpUPage = thisURL.split( "/" );

    thisUPage = tmpUPage[ tmpUPage.length-1 ];

    strwrite = "<tr><td valign=top>thisHPage: </td><td>[" + thisHPage + "]</td></tr>"

    strwrite += "<tr><td valign=top>thisUPage: </td><td>[" + thisUPage + "]</td></tr>"

    document.write( strwrite );

    </script><tr><td>

    =================
    获取IP
    1、ASP.NET中获取

    获取服务器的IP地址:
    using System.Net;

    string myIP,myMac;
    System.Net.IPAddress[] addressList = Dns.GetHostByName(Dns.GetHostName()).AddressList;
    if ( addressList.Length>1)
    {
    myIP = addressList[0].ToString();
    myMac = addressList[1].ToString();
    }
    else
    {
    myIP = addressList[0].ToString();
    myMac = "没有可用的连接";
    }
    myIP地址就是服务器端的ip地址。

    获取客户端的ip地址,可以使用

    //获取登录者ip地址
    string ip = Request.ServerVariables["REMOTE_ADDR"].ToString();
    2、通过JS获取
    <html>
    <head>
    <title></title>
    <meta http-equiv="Content-Type" content="text/html; charset=gbk">
    </head>

    <body>

    <object classid="CLSID:76A64158-CB41-11D1-8B02-00600806D9B6" id="locator" style="display:none;visibility:hidden"></object>
    <object classid="CLSID:75718C9A-F029-11d1-A1AC-00C04FB6C223" id="foo" style="display:none;visibility:hidden"></object>                                                        

    <form name="myForm">
    <br/>MAC地址:<input type="text" name="macAddress">
    <br/>IP地址:<input type="text" name="ipAddress">
    <br/>主机名:<input type="text" name="hostName">
    </form>

    </body>
    </html>
    <script language="javascript">
    var sMacAddr="";
    var sIPAddr="";
    var sDNSName="";

    var service = locator.ConnectServer();
    service.Security_.ImpersonationLevel=3;
    service.InstancesOfAsync(foo, 'Win32_NetworkAdapterConfiguration');

    </script>

    <script FOR="foo" EVENT="OnObjectReady(objObject,objAsyncContext)" LANGUAGE="JScript">
            if(objObject.IPEnabled != null && objObject.IPEnabled != "undefined" && objObject.IPEnabled == true){
                              if(objObject.IPEnabled && objObject.IPAddress(0) !=null && objObject.IPAddress(0) != "undefined")
                                            sIPAddr = objObject.IPAddress(0);
                              if(objObject.MACAddress != null &&objObject.MACAddress != "undefined")
                        sMacAddr = objObject.MACAddress;
                              if(objObject.DNSHostName != null &&objObject.DNSHostName != "undefined")
                                            sDNSName = objObject.DNSHostName;
             }
    </script>

    <script FOR="foo" EVENT="OnCompleted(hResult,pErrorObject, pAsyncContext)" LANGUAGE="JScript">

           myForm.macAddress.value=sMacAddr;
    myForm.ipAddress.value=sIPAddr;
           myForm.hostName.value=sDNSName;
    </script>

  • 相关阅读:
    Lambda表达式、依赖倒置
    ASP.NET vNext 概述
    Uname
    RHEL4 i386下安装rdesktop【原创】
    Taxonomy of class loader problems encountered when using Jakarta Commons Logging(转)
    How to decompile class file in Java and Eclipse
    先有的资源,能看的速度看,不能看的,抽时间看。说不定那天就真的打不开了(转)
    Google App Engine 学习和实践
    【VBA研究】VBA通过HTTP协议实现邮件轨迹跟踪查询
    js正則表達式语法
  • 原文地址:https://www.cnblogs.com/luluping/p/1485881.html
Copyright © 2011-2022 走看看