栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 软件开发 > 后端开发 > Java

Java通过IP获取位置信息

Java 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

Java通过IP获取位置信息

Java通过IP获取位置信息
  • Java通过IP获取位置信息
    • 离线库
        • 使用方式:
        • 踩过的坑
    • 第三方地图软件Api
      • 通过各大地图平台提供的Api接口
        • 高德地图:
        • 百度地图:
        • 腾讯地图:
        • 第一篇博客,感谢支持!!!

Java通过IP获取位置信息 离线库
  • 不使用Api获取地址
使用方式:
  • 导入依赖

    org.lionsoul
    ip2region
    2.6.4

//把ip2region.xdb文件丢到resources路径下
String dbPath = "/ip2region/ip2region.xdb";
String path = Test.class.getResource(dbPath).getPath();
byte[] cBuff = Searcher.loadContentFromFile(path);
Searcher searcher = Searcher.newWithBuffer(cBuff);
String search = searcher.search("127.0.0.1");
String province = search.split("\|")[2];
System.out.println("province = " + province);
System.out.println("search = " + search);

//控制台打印
province = 上海
search = 中国|0|上海|上海市|电信

GitHubJava版地址

踩过的坑

java.io.FileNotFoundExeption: …/app.jar!/BOOT-INF/classess!/ip2region/ip2region.xdb(No such file or directory)
容器部署的项目,打的是jar包,这个路径是不存在于磁盘上的,所以部署后读取不到该路径!!!!

解决方案:

//把ip2region.xdb文件丢到resources路径下
String dbPath = "/ip2region/ip2region.xdb";
//获取流
InputStream inputStream = Test.class.getResourceAsStream(dbPath);
File file = new File("your path");
//流写入文件
FileUtils.copyInputStreamToFile(inputStream,file);
RandomAccessFile randomAccessFile = new RandomAccessFile(file, "r");
byte[] cBuff = Searcher.loadContent(randomAccessFile);
Searcher searcher = Searcher.newWithBuffer(cBuff);
String search = searcher.search("127.0.0.1");
System.out.println("search = " + search);

//控制台打印
search = 中国|0|上海|上海市|电信
第三方地图软件Api
  • 高德
  • 百度地图
  • 腾讯地图
  • 等等
通过各大地图平台提供的Api接口
  • 特性:
  • 需要提前注册账号(公司项目账号捆绑于个人?)
  • Api有停用风险
  • 可能收费(自己去调研?)
  • 公司内网不能直接访问(开墙解决)
  • 等等
高德地图:
  • Api接口文档地址
  • 服务请求示例:https://restapi.amap.com/v3/ip?ip=114.247.50.2&output=xml&key=<用户的key>
  • 申请Key链接
  • 图片示例:
百度地图:
  • Api接口文档
  • 服务请求示例:https://api.map.baidu.com/location/ip?ak=您的AK&ip=您的IP&coor=bd09ll
  • 申请key链接
  • 图片示例:
腾讯地图:
  • Api接口文档地址
  • 服务请求示例:https://apis.map.qq.com/ws/location/v1/ip?ip=111.206.145.41&key=OB4BZ-D4W3U-B7VVO-4PJWW-6TKDJ-WPB77
  • 申请key链接
  • 图片示例
第一篇博客,感谢支持!!!
转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/1019785.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号