网上解决方案

1.通过搜狐接口

获取方式如下:

//网页端引入脚本
<script type="text/javascript" src="http://pv.sohu.com/cityjson?ie=utf-8"></script>
//JS端直接获取
returnCitySN["cip"]

缺点:目前对于公网IP的地址只精确到省,没有详细的IP信息

2.通过淘宝接口



获取方式不详细介绍,不推荐此解决方案获取

缺点:时不时就挂掉了获取不到,非常不稳定

3.通过腾讯位置API



查看API网址腾讯位置接口

获取方式通过跨域ajax获取:

//JS AJAX
function() {
var data = { key: "这里填写注册腾讯api时返回的key" };//ip缺省时会自动获取请求端的公网IP,
var url = "https://apis.map.qq.com/ws/location/v1/ip";
data.output = "jsonp";
$.ajax({
type: "get",
dataType: 'jsonp',
data: data,
jsonp: "callback",
url: url,
success: function (json) {
array = new Array;
array.push(json.result.ip);//公网IP
array.push(json.result.ad_info.province + json.result.ad_info.city + json.result.ad_info.district);//省市区
array.push(json.result.location.lat);//经度
array.push(json.result.location.lng);//纬度
return array;
},
error: function (err) {
//业务处理
}
});
}

缺点:需要注册腾讯自己的key,目的在于控制调用腾讯位置接口服务的权限,注册后还会有调用次数限制,个人和企业不同

推荐第三种获取公网IP解决方案

JS获取客户端公网IP和IP地址的更多相关文章

  1. js获取客户端time,cookie,url,ip,refer,user_agent信息:

    <script src="http://pv.sohu.com/cityjson?ie=utf-8"></script> <script type=& ...

  2. JS获取客户端IP地址、MAC和主机名七种方法

    一.使用JS获取客户端IP的几个方法方法一(只针对IE且客户端的IE允许AcitiveX运行,通过平台:XP,SERVER03,2000).获取客户端IP代码:<HTML><HEAD ...

  3. JS获取客户端IP地址、MAC和主机名【转】

    JS获取客户端IP地址.MAC和主机名 引用:JS获取客户端IP地址.MAC和主机名的7个方法汇总 利用搜狐接口 <html> <head> <meta http-equ ...

  4. JS获取客户端IP地址、MAC和主机名的7个方法汇总

    今天在搞JS(javascript)获取客户端IP的小程序,上网搜了下,好多在现在的系统和浏览器中的都无效,很无奈,在Chrome.FireFox中很少搞到直接利用ActiveX获取IP等的JS脚本. ...

  5. JAVA获取客户端请求的当前网络ip地址(附:Nginx反向代理后获取客户端请求的真实IP)

    1. JAVA获取客户端请求的当前网络ip地址: /** * 获取客户端请求的当前网络ip * @param request * @return */ public static String get ...

  6. js获取客户端IP

    获取客户端公网IP <script src="http://pv.sohu.com/cityjson?ie=utf-8"></script> <scr ...

  7. Java Web项目获取客户端和服务器的IP地址

    在JSP里,获取客户端的IP地址的方法是:request.getRemoteAddr(),这种方法在大部分情况下都是有效的.但是在通过了Apache,Squid等反向代理软件就不能获取到客户端的真实I ...

  8. js 获取客户端mac地址

    js 获取客户端mac地址 javascript获取客户端网卡MAC地址和IP地址和计算机名 nodesj如何获得客户端的mac地址呢? 浏览器获取MAC地址 不限浏览器的mac地址取得的几种办法 I ...

  9. js 获取请求网络协议、IP、端口号、项目名称

      js 获取请求网络协议.IP.端口号.项目名称 CreationTime--2018年6月19日15点54分 Author:Marydon /** * 获取url请求前缀 * @return ht ...

随机推荐

  1. PHP实现批量删除(封装)

    前台 <!DOCTYPE html> <html> <head> <title>批量删除</title> </head> < ...

  2. 【代码笔记】iOS-手机系统版本

    一,代码. - (void)viewDidLoad { [super viewDidLoad]; // Do any additional setup after loading the view, ...

  3. PHP-隐藏手机号中间四位

    substr_replace('手机号', '****', 3, 4);

  4. Echarts之悬浮框中的数据排序

    Echarts非常强大,配置也非常的多,有很多细节需要深入研究.详解一下关于悬浮框中的数据排序问题 悬浮框的数据排序默认是根据series中的数据位置排序的,在我们想自定义排序时,在echarts的配 ...

  5. JSP内置对象——session对象

    举个购物流程的例子: 这整个购物过程,它是属于一次回话.那么这个session是保存在服务器内存当中,并且它保存着不同用户对应的session,一个用户对应一个session.看下面这幅图: 从图中可 ...

  6. Android网络编程系列之Volley总结

    前言 Volley的中文翻译为“齐射.并发”,是在2013年的Google大会上发布的一款Android平台网络通信库,具有网络请求的处理.小图片的异步加载和缓存等功能,能够帮助 Android AP ...

  7. Android 监听手机GPS打开状态

    转载请标明出处:http://blog.csdn.net/zhaoyanjun6/article/details/70854942 本文出自[赵彦军的博客] GPS_Presenter package ...

  8. aop 拦截含有特定注解的类

    1.功能点:使用aop拦截含有自定义注解的类 1.自定义注解 package com.zhuanche.common.dingdingsync; import java.lang.annotation ...

  9. 【SPL标准库专题(10)】SPL Exceptions

    嵌套异常 了解SPL异常之前,我们先了解一下嵌套异常.嵌套异常顾名思义就是异常里面再嵌套异常,一个异常抛出,在catch到以后再抛出异常,这时可以通过Exception基类的getPrevious方法 ...

  10. SQL Server 2014 新特性——内存数据库(转载)

    目录 SQL Server 2014 新特性——内存数据库 简介: 设计目的和原因: 专业名词 In-Memory OLTP不同之处 内存优化表 内存优化表的索引 并发能力的提升 和竞争对手相比几点 ...