可能重复:
仅使用 Javascript 获取客户端 IP?
我正在开发 .net mvc 3应用程序。我只想获取客户端的 IP 地址。如何使用JavaScript获取客户端 IP 。如果有人知道请分享。
可能重复:
仅使用 Javascript 获取客户端 IP?
我正在开发 .net mvc 3应用程序。我只想获取客户端的 IP 地址。如何使用JavaScript获取客户端 IP 。如果有人知道请分享。
你不能用javascript做到这一点。您可以使用 javascript 将 AJAX 请求发送到控制器操作,该操作将返回读取它的客户端的 IP Request.UserHostAddress
:
public ActionResult GetIP()
{
return Json(new { ip = Request.UserHostAddress }, JsonRequestBehavior.AllowGet);
}
接着:
var url = '@Url.Action("GetIP", "SomeController")';
$.getJSON(url, function(result) {
alert(result.ip);
});
<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>