如何使用javascript或Jquery打印客户端IP和域
尝试使用json标记,但出现一些问题,无法获取域,请尝试对域和ip使用一个标记。对于如何获取和打印这两个文件,有任何建议。您可以使用API获取ip 在谷歌搜索的时候,在这里找到了一个如何使用javascript或Jquery打印客户端IP和域,javascript,jquery,Javascript,Jquery,尝试使用json标记,但出现一些问题,无法获取域,请尝试对域和ip使用一个标记。对于如何获取和打印这两个文件,有任何建议。您可以使用API获取ip 在谷歌搜索的时候,在这里找到了一个 函数getip(json){ 警报(json.ip);//警报ip地址 } 域名很简单。 只需使用location.hostname试试这个 <script type="application/javascript"> $.get("http://ipinfo.io", function(respo
函数getip(json){
警报(json.ip);//警报ip地址
}
域名很简单。
只需使用location.hostname
试试这个
<script type="application/javascript">
$.get("http://ipinfo.io", function(response) {
alert(response.ip);
}, "jsonp");
</script>
$.get(”http://ipinfo.io“,功能(响应){
警报(response.ip);
}“jsonp”);
或
<script type="application/javascript">
$.get("http://ipinfo.io/json", function(response) {
console.log(response);
});
</script>
$.get(”http://ipinfo.io/json“,功能(响应){
控制台日志(响应);
});
从逻辑上讲,您需要从客户端发送请求,并使用服务器端脚本使用IP进行响应。有几种方法可以实现这一点 让我解释一种方法,你可以做到: 向代码上的PHP页面发送ajax请求。PHP将为您提供客户端IP。支持PHP页面是带有以下代码的
getIP.PHP
:
header("Content-Type: application/json");
$sIP = $_SERVER['REMOTE_ADDR'];
echo json_encode($sIP);
exit();
现在需要向PHP页面发送AJAX请求。假设我们使用以下使用jquery的方法来实现这一点:
var myIP = '';
$.ajax({
url: "getIP.php",
method: "get",
dataType: "json",
success: function(data) {
myIP = data;
}
});
我们只是实现了逻辑。但如果您没有访问服务器端脚本的权限。您可以使用提供IP的任何其他API或服务
您可以使用
窗口.位置.主机名获取域。您可以通过
window.location.origin;
或者在IE中,你可能想这样做
if (!window.location.origin) {
window.location.origin = window.location.protocol + "//" + window.location.hostname +
(window.location.port ? ':' + window.location.port: '');
}
对于ip,您需要使用第三方服务来获取ip。
我喜欢免费的
$.ajax({
url: '//freegeoip.net/json/',
type: 'POST',
dataType: 'jsonp',
success: function(location) {
console.log(location.ip);//Apart from ip it also gives more details
//Like country etc
}
});
你的问题太模糊了?你能详细说明一下吗?只要在客户端点击时尝试获取IP和域。并希望存储在我的数据库中。。有可能吗?还是很模糊,你想得到客户端Ip和谁的域名?域名。。。。由哪位客户输入了一个答案,希望帮助您解决其中的问题能让您畅所欲言;
$.ajax({
url: '//freegeoip.net/json/',
type: 'POST',
dataType: 'jsonp',
success: function(location) {
console.log(location.ip);//Apart from ip it also gives more details
//Like country etc
}
});