asp.net(vb.net)获取真实IP的函数_asp.net教程-查字典教程网
asp.net(vb.net)获取真实IP的函数
asp.net(vb.net)获取真实IP的函数
发布时间:2016-12-29 来源:查字典编辑
摘要: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教程学习
    热门asp.net教程学习
    编程开发子分类