Asp.NETMVC3:使用Javascript的客户端IP地址
可能重复:Asp.NETMVC3:使用Javascript的客户端IP地址,javascript,jquery,asp.net-mvc-3,Javascript,Jquery,Asp.net Mvc 3,可能重复: 我正在开发.netMVC3应用程序。我只想获取客户端的ip地址。 如何使用JavaScript获取客户端ip。如果有人知道,请分享。你不能用javascript做到这一点。您可以使用javascript向控制器操作发送AJAX请求,该操作将返回从以下位置读取请求的客户端的IP: 然后: var url = '@Url.Action("GetIP", "SomeController")'; $.getJSON(url, function(result) { alert(res
我正在开发.netMVC3应用程序。我只想获取客户端的ip地址。
如何使用JavaScript获取客户端ip。如果有人知道,请分享。你不能用javascript做到这一点。您可以使用javascript向控制器操作发送AJAX请求,该操作将返回从以下位置读取请求的客户端的IP: 然后:
var url = '@Url.Action("GetIP", "SomeController")';
$.getJSON(url, function(result) {
alert(result.ip);
});
使用javascript无法做到这一点。您可以使用javascript向控制器操作发送AJAX请求,该操作将返回从以下位置读取请求的客户端的IP: 然后:
var url = '@Url.Action("GetIP", "SomeController")';
$.getJSON(url, function(result) {
alert(result.ip);
});
window.onload=函数(){
var script=document.createElement(“脚本”);
script.type=“text/javascript”;
script.src=”http://jsonip.appspot.com/?callback=DisplayIP";
document.getElementsByTagName(“head”)[0].appendChild(脚本);
};
功能显示IP(响应){
document.getElementById(“ipaddress”).innerHTML=“您的IP地址是”+response.IP;
}
window.onload=函数(){
var script=document.createElement(“脚本”);
script.type=“text/javascript”;
script.src=”http://jsonip.appspot.com/?callback=DisplayIP";
document.getElementsByTagName(“head”)[0].appendChild(脚本);
};
功能显示IP(响应){
document.getElementById(“ipaddress”).innerHTML=“您的IP地址是”+response.IP;
}
// 1. 你的数据在这里
函数my_回调(json){
警报(“IP:+json.IP+”NContry:+json.COUNTRY);
}
函数my_callback2(json){
//更多信息请访问http://api.easyjquery.com/test/demo-ip.php
警报(“IP:+json.IP+”国家:+json.COUNTRY+”城市:+json.cityName+“regionName:+json.regionName”);
}
// 2. 设置回调函数
//EasyjQuery_Get_IP(“我的回调”);//最快版本
EasyjQuery_Get_IP(“my_callback2”、“full”)//完整版本
// 1. 你的数据在这里
函数my_回调(json){
警报(“IP:+json.IP+”NContry:+json.COUNTRY);
}
函数my_callback2(json){
//更多信息请访问http://api.easyjquery.com/test/demo-ip.php
警报(“IP:+json.IP+”国家:+json.COUNTRY+”城市:+json.cityName+“regionName:+json.regionName”);
}
// 2. 设置回调函数
//EasyjQuery_Get_IP(“我的回调”);//最快版本
EasyjQuery_Get_IP(“my_callback2”、“full”)//完整版本
通常情况下,这会给出执行NAT的路由器的IP地址,而不是客户端本身。由于ASP.NET可用,因此可以从ASP.NET服务器的请求中获取该IP地址,因此OP可能不需要该地址。通常情况下,这将提供执行NAT的路由器的IP地址,而不是客户端本身的IP地址。由于ASP.NET可用,该IP地址可以从对ASP.NET服务器的请求中获取,因此它可能不是OP想要的。请阅读以下链接[an-i-lookup-the-IP-address-of-a-hostname-from-javascript][1][1]:javascript是客户端脚本,因此它没有访问请求对象的权限。服务器正在捕获用户请求,因此只有服务器端脚本可以访问它。在.NET中,您拥有获取客户端ip的属性:Request.userhostaddress读取以下链接[an-i-lookup-the-ip-address-of-a-hostname-from-javascript][1][1]:javascript是客户端脚本,因此它无权访问请求对象。服务器正在捕获用户请求,因此只有服务器端脚本可以访问它。在.NET中,您拥有获取客户端ip的属性:Request.UserHostAddress
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<title></title>
<script type="text/javascript">
window.onload = function () {
var script = document.createElement("script");
script.type = "text/javascript";
script.src = "http://jsonip.appspot.com/?callback=DisplayIP";
document.getElementsByTagName("head")[0].appendChild(script);
};
function DisplayIP(response) {
document.getElementById("ipaddress").innerHTML = "Your IP Address is " + response.ip;
}
</script>
</head>
<body>
<form>
<span id = "ipaddress"></span>
</form>
</body>
</html>
<!-- Require jQuery / Anyversion --><script type="text/javascript" language="Javascript" src="http://ajax.googleapis.com/ajax/libs/jquery/1.7.1/jquery.min.js"></script>
<!-- Require EasyJQuery After JQuery --><script type="text/javascript" language="Javascript" src="http://api.easyjquery.com/easyjquery.js"></script>
<script type="text/javascript" language="Javascript">
// 1. Your Data Here
function my_callback(json) {
alert("IP :" + json.IP + " nCOUNTRY: " + json.COUNTRY);
}
function my_callback2(json) {
// more information at http://api.easyjquery.com/test/demo-ip.php
alert("IP :" + json.IP + " nCOUNTRY: " + json.COUNTRY + " City: " + json.cityName + " regionName: " + json.regionName);
}
// 2. Setup Callback Function
// EasyjQuery_Get_IP("my_callback"); // fastest version
EasyjQuery_Get_IP("my_callback2","full"); // full version
</script>