手机
当前位置:查字典教程网 >编程开发 >asp.net教程 >asp.net(vb.net)获取真实IP的函数
asp.net(vb.net)获取真实IP的函数
摘要:aspxvb.net获取真实IP的函数如下:复制代码代码如下:PublicFunctionCheckIp(ByValipAsString)A...

aspx vb.net获取真实IP的函数如下:

复制代码 代码如下:

<script runat="server">

Public Function CheckIp(ByVal ip As String) As Boolean

Dim pat As String = "^[0-9]{1,3}.[0-9]{1,3}.[0-9]{1,3}.[0-9]{1,3}$"

Dim reg As Regex = New Regex(pat)

if ip = "" Then

CheckIp = False

exit Function

end if

CheckIp = reg.IsMatch(ip)

End Function

Public Function get_cli_ip() As String

If ( Not( System.Web.HttpContext.Current.Request.ServerVariables("HTTP_CLIENT_IP") Is Nothing) And CheckIp(System.Web.HttpContext.Current.Request.ServerVariables("HTTP_CLIENT_IP")) = True) Then

get_cli_ip = System.Web.HttpContext.Current.Request.ServerVariables("HTTP_CLIENT_IP")

Exit Function

ElseIf Not(System.Web.HttpContext.Current.Request.ServerVariables("HTTP_X_FORWARDED_FOR") Is Nothing) Then

Dim ips() As String = Split(System.Web.HttpContext.Current.Request.ServerVariables("HTTP_X_FORWARDED_FOR"), ",")

For i As Integer = 0 To ips.Length - 1

If CheckIp(Trim(ips(i))) = True Then

get_cli_ip = Trim(ips(i))

Exit Function

End If

Next

End If

get_cli_ip = System.Web.HttpContext.Current.Request.ServerVariables("REMOTE_ADDR")

End Function

</script>

完整的测试页面:

复制代码 代码如下:

<%@ Page Language="VB" AutoEventWireup="false" CodeFile="Default.aspx.vb" Inherits="_Default" %>

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">

<script runat="server">

Public Function CheckIp(ByVal ip As String) As Boolean

Dim pat As String = "^[0-9]{1,3}.[0-9]{1,3}.[0-9]{1,3}.[0-9]{1,3}$"

Dim reg As Regex = New Regex(pat)

if ip = "" Then

CheckIp = False

exit Function

end if

CheckIp = reg.IsMatch(ip)

End Function

Public Function get_cli_ip() As String

If ( Not( System.Web.HttpContext.Current.Request.ServerVariables("HTTP_CLIENT_IP") Is Nothing) And CheckIp(System.Web.HttpContext.Current.Request.ServerVariables("HTTP_CLIENT_IP")) = True) Then

get_cli_ip = System.Web.HttpContext.Current.Request.ServerVariables("HTTP_CLIENT_IP")

Exit Function

ElseIf Not(System.Web.HttpContext.Current.Request.ServerVariables("HTTP_X_FORWARDED_FOR") Is Nothing) Then

Dim ips() As String = Split(System.Web.HttpContext.Current.Request.ServerVariables("HTTP_X_FORWARDED_FOR"), ",")

For i As Integer = 0 To ips.Length - 1

If CheckIp(Trim(ips(i))) = True Then

get_cli_ip = Trim(ips(i))

Exit Function

End If

Next

End If

get_cli_ip = System.Web.HttpContext.Current.Request.ServerVariables("REMOTE_ADDR")

End Function

</script>

<html xmlns="http://www.w3.org/1999/xhtml" >

<head runat="server">

<title>Untitled Page</title>

</head>

<body>

<%

Dim client_ip As String = get_cli_ip()

System.Web.HttpContext.Current.Response.Write(client_ip)

%>

</body>

</html>

【asp.net(vb.net)获取真实IP的函数】相关文章:

asp.net获取网站绝对路径案例详解

asp.net Execl的添加,更新操作实现代码

asp.net request.PathInfo实现的url重写

asp.net Timer的使用方法

asp.net UpdatePanel的简单用法

asp.net aspnetpager分页统计时与实际不符的解决办法

asp.net下Request.QueryString取不到值的解决方法

asp.net刷新本页面的六种方法

asp.net OleDbCommand 的用法

asp.net后台弹窗如何实现

精品推荐
分类导航