Jsp调用淘宝IP地址库获取来访IP详细信息

  示例网页点击:www.trembler.cn/ipinfo/ipinfo(服务器有其他用处,页面已失效)

		String ip = request.getRemoteAddr();//获取来访者IP
String path = "http://ip.taobao.com/service/getIpInfo.php?ip="+ip;//调用淘宝API
URLConnection url = new URL(path).openConnection();
url.connect();//发送GET方法
StringBuilder stringBuilder = new StringBuilder();
BufferedReader reader = new BufferedReader(new InputStreamReader(url.getInputStream(), StandardCharsets.UTF_8));//获取得到的信息
String line = null;
while ((line = reader.readLine())!=null){
stringBuilder.append(line);
}
JSONObject jsonInfo = JSON.parseObject(stringBuilder.toString()); System.out.println(stringBuilder.toString());
  • 代码中的JSONObject是使用了阿里的fastjson类,需要导入这个包,点击下载
  • 上述方法已经在控制台输出了获取到的json格式的IP详细信息,接下来使用阿里fastjson类提取出关键信息。
if(jsonInfo.getString("code").equals("0")){//返回code为0时为正常情况
String data = jsonInfo.getString("data");
JSONObject ipInfo = JSON.parseObject(data);
//接下来要从ipInfo的json中提取出详细信息
pw.println("<table align=center>");
pw.println("<tr align=center>");
pw.println("<td align=right/>ip:");
pw.println("<td align=center/>"+ipInfo.getString("ip"));
pw.println("<tr/>");
pw.println("<tr align=center>");
pw.println("<td align=right/>国家:");
pw.println("<td align=center/>"+ipInfo.getString("country"));
pw.println("<tr/>");
pw.println("<tr align=center>");
pw.println("<td align=right/>国家id:");
pw.println("<td align=center/>"+ipInfo.getString("country_id"));
pw.println("<tr/>");
pw.println("<tr align=center>");
pw.println("<td align=right/>地区:");
pw.println("<td align=center/>"+ipInfo.getString("area"));
pw.println("<tr/>");
pw.println("<tr align=center>");
pw.println("<td align=right/>地区id:");
pw.println("<td align=center/>"+ipInfo.getString("area_id"));
pw.println("<tr/>");
pw.println("<tr align=center>");
pw.println("<td align=right/>省份:");
pw.println("<td align=center/>"+ipInfo.getString("region"));
pw.println("<tr/>");
pw.println("<tr align=center>");
pw.println("<td align=right/>省份id:");
pw.println("<td align=center/>"+ipInfo.getString("region_id"));
pw.println("<tr/>");
pw.println("<tr align=center>");
pw.println("<td align=right/>城市:");
pw.println("<td align=center/>"+ipInfo.getString("city"));
pw.println("<tr/>");
pw.println("<tr align=center>");
pw.println("<td align=right/>城市id:");
pw.println("<td align=center/>"+ipInfo.getString("city_id"));
pw.println("<tr/>");
pw.println("<tr align=center>");
pw.println("<td align=right/>县区:");
pw.println("<td align=center/>"+ipInfo.getString("county"));
pw.println("<tr/>");
pw.println("<tr align=center>");
pw.println("<td align=right/>县区id:");
pw.println("<td align=center/>"+ipInfo.getString("county_id"));
pw.println("<tr/>");
pw.println("<tr align=center>");
pw.println("<td align=right/>运营商:");
pw.println("<td align=center/>"+ipInfo.getString("isp"));
pw.println("<tr/>");
pw.println("<tr align=center>");
pw.println("<td align=right/>运营商id:");
pw.println("<td align=center/>"+ipInfo.getString("isp_id"));
pw.println("<tr/>");
  • 至此就完成了对IP的详细信息的提取

Jsp调用淘宝IP地址库获取来访IP详细信息的更多相关文章

  1. Python之通过IP地址库获取IP地理信息

    利用第三方的IP地址库,各个公司可以根据自己的业务情况打造自己的IP地址采集分析系统.例如游戏公司可以采集玩家地区信息,进行有针对性的运营策略,还可能帮助分析玩家网络故障分布等等. #!/usr/bi ...

  2. IP地址库解析——读取IP地址获得实际地理位置信息的java源码实现

    说明:IP地址库来自QQwry.dat数据库文件,通过解析地址库当中的ip,已经细化最后获取的信息:获取ip地址对应的:国家 / 省 / 市 / 运营商ISP信息. 解析主要用到三个类: (1) IP ...

  3. 通过淘宝IP地址库获取IP位置

    地址:http://ip.taobao.com/ 提供的服务包括: 1. 根据用户提供的IP地址,快速查询出该IP地址所在的地理信息和地理相关的信息,包括国家.省.市和运营商. 2. 用户可以根据自己 ...

  4. 淘宝IP地址库获取到省市IP地址

    http://ip.aliyun.com/index.html https://ispip.clang.cn/ https://github.com/Pingze-github/local-ips 1 ...

  5. 通过新浪ip地址库获取用户省份

    <script src="http://apps.bdimg.com/libs/jquery/1.11.3/jquery.min.js"></script> ...

  6. C#获取外网IP地址;C#获取所在IP城市地址

    public static string GetIP()         {             using (var webClient = new WebClient())           ...

  7. python3.4学习笔记(二十三) Python调用淘宝IP库获取IP归属地返回省市运营商实例代码

    python3.4学习笔记(二十三) Python调用淘宝IP库获取IP归属地返回省市运营商实例代码 淘宝IP地址库 http://ip.taobao.com/目前提供的服务包括:1. 根据用户提供的 ...

  8. Delphi使用JSON解析调用淘宝IP地址库REST API 示例

    淘宝IP地址库:http://ip.taobao.com,里面有REST API 说明. Delphi XE 调试通过,关键代码如下: var IdHTTP: TIdHTTP; RequestURL: ...

  9. 淘宝IP地址库API地址

    淘宝IP地址库:http://ip.taobao.com/instructions.php   接口说明 1. 请求接口(GET): http://ip.taobao.com/service/getI ...

随机推荐

  1. dart lang 开发环境

    ========================Dart SDK 下载========================Dart SDK 主页: https://dart.dev/toolsDart S ...

  2. 字符串和id的转换方法

    在项目中经常会遇到一个需求就是字符串和id的转换,比如标签和标签id.因为在存储系统里面存储字符串会比较浪费内存,而存储id会节省内存和提高效率. 问题分解 通过字符串获得id 通过id获得字符串 实 ...

  3. itest(爱测试) 3.5.0 发布,开源BUG 跟踪管理& 敏捷测试管理软件

    v3.5.0 下载地址 :itest下载 itest 简介:查看简介 V3.5.0 增加了 9个功能增强,和17个BUG修复 ,详情如下所述. 9个功能增强 : (1)增加xmind(思维导图) 转E ...

  4. 关于appium的简单理解

    搭建好appium环境后,要学会定位app页面上的元素.下面是2款元素定位工具 uiautomatorviewer   -- Android SDK自带的元素定位工具,由Google开发的 Inspe ...

  5. jQuery中的文档处理(五)

    1. append(content|fn), 向每个匹配的元素内部追加内容 在内部结尾添加. 参数说明: content:String, Element, jQuery,要追加到目标中的内容 func ...

  6. 《RocketMQ》

    作为一款消息中间件,RocketMQ需要解决的技术问题其实在分布式系统领域中都有所体现.首先如果将分布式系统的领域按照分布式通信.分布式存储.分布式计算以及分布式管理这四大部分进行划分,其实就会发现在 ...

  7. 执行flutter doctor后,无任何反应

    flutter运行需要联网,并且由于qiang,会导致访问缓慢,解决办法 export PUB_HOSTED_URL=https://pub.flutter-io.cn export FLUTTER_ ...

  8. Ubuntu18.4编译pmon,缺少makedepend和pmoncfg

    提示makedepend找不到解决方法:$ apt-cache search makedependxutils-dev - X Window System utility programs for d ...

  9. 赞!这款国产的SSH工具,好用到爆!

    之前分享 MobaXterm 时 有小伙伴留言说到了 FinalShell 我本来是一脸蒙蔽的 网上搜了一下 它们家的官网 打开官网 我一度怀疑自己进错了网站 简单(jianlou)的排版 像极了上个 ...

  10. Ubuntu 14.04 安装mysql

    Ubuntu 14.04 没有mysql5.7的源,需要连接外部资源下载安装. wget http://dev.mysql.com/get/mysql-apt-config_0.8.1-1_all.d ...