根据ip进行定位城市,本次利用的是根据百度地图API进行定位.网上也有其他的方法.本次就将我自己写的东西总结一下:

一.首先获取ip地址

public static String getReqIp(HttpServletRequest request) throws IOException {String ip = request.getHeader("x-forwarded-for");if (ip != null) {if (ip.indexOf(',') == -1) {return ip;}return ip.split(",")[0];}if (ip == null || ip.length() == 0 || "unknown".equalsIgnoreCase(ip)) {ip = request.getHeader("Proxy-Client-IP");}if (ip == null || ip.length() == 0 || "unknown".equalsIgnoreCase(ip)) {ip = request.getHeader("WL-Proxy-Client-IP");}if (ip == null || ip.length() == 0 || "unknown".equalsIgnoreCase(ip)) {ip = request.getRemoteAddr();}String city=LocationByIp.getlocation(ip);//此处是有一个方法根据ip进行定位城市return ip+"+"+city;//返回城市和ip地址
}

二.调用百度地图API进行定位城市

1.首先要获取sncal签字,方法如下:

这里给出别人的方法连接:https://blog.csdn.net/weixin_39549656/article/details/80096456

这里的sncal是根据输入的位置和ip进行sncal算法进行计算得出sn签字.其中公司的AK是必须存在的!

2.若不输入位置,就是可以根据ip进行城市定位.

对上面的列子获取到的参数进行处理

String html = EntityUtils.toString(entity);// 把响应实体转成文本
JSONObject jsondata=JSONObject.parseObject(html);//将响应转换成json数组
Object content=jsondata.get("content");//获取内容
if (content!=null){JSONObject addressdetail=JSONObject.parseObject(content.toString());//将响应转换成json数组并获取地址信息Object dizhi=addressdetail.get("address_detail");//获取地址详细内容JSONObject dizhidetail=JSONObject.parseObject(dizhi.toString());//将响应转换成json数组//String province=dizhidetail.get("province").toString();//安徽省String city=dizhidetail.get("city").toString();//合肥市return city;
}else{return "本地登录";
}

利用百度地图API进行根据ip定位城市相关推荐

  1. vue 使用百度地图api_使用百度地图api来实现ip高精度定位

    曾有人问:我们的IP地址库是否能够提供这样的结果?可以确定用户在某个网吧.写字楼甚至某个小区?那上面这样的IP数据库是如何产生的呢? 俗称"人海战术".您可别不相信,直到今天,依然 ...

  2. 百度地图利用位置提供服务器,利用百度地图API获取当前位置信息的实例

    利用百度地图API可以做很多事情,个人感觉最核心也是最基础的就是定位功能了.这里分享一个制作的JS可以实现登录网页后定位: var map; var gpsPoint; var baiduPoint; ...

  3. python批量爬取小网格区域坐标系_Python爬虫实例_利用百度地图API批量获取城市所有的POI点...

    上篇关于爬虫的文章,我们讲解了如何运用Python的requests及BeautifuiSoup模块来完成静态网页的爬取,总结过程,网页爬虫本质就两步: 1.设置请求参数(url,headers,co ...

  4. 利用百度地图API进行车辆查询并用鼠标拾点获取经纬度

    利用百度地图API查询公交车线路位置信息以及鼠标取点的经纬度 先从官网申请秘钥http://lbsyun.baidu.com/ 2. 如果是用jsp写动态web项目,在jsp页面中引入js库,并且引入 ...

  5. python 接入百度地图数据包下载_Python爬虫-利用百度地图API接口爬取数据并保存至MySQL数据库...

    首先,我这里有一份相关城市以及该城市的公园数量的txt文件: 分析-02.png 其次,利用百度地图API提供的接口爬取城市公园的相关信息. 所利用的API接口有两个: 1.http://api.ma ...

  6. 利用百度地图api将excel中的经纬度数据可视化

    利用百度地图api将excel中的经纬度数据可视化 因为本人最近在研究2019年研究生数学建模华为杯D题,想将它3个excel文件汽车的经纬度数据在地图上画出来,找了很多方法才实现.现将它分享给大家, ...

  7. 利用百度地图api,自定义起始点进行驾车路线的搜索,并可以根据不同驾车策略给出驾驶指导

    利用百度地图api,通过在输入框(带自动填充)输入起始点,然后根据用户选择的不同驾车策略来进行驾车路线搜索并显示具体的路线信息.驾车策略共三种,默认路线(时间最短).最短路程.不走高速.左侧搜索栏可以 ...

  8. 【百度地图API】暑假放假回老家——城市切换功能

    原文:[百度地图API]暑假放假回老家--城市切换功能 任务描述: 酸奶小妹放寒假啦,要从北京呼啦一下飞回重庆呢.现在百度地图API上不能直接切换城市,怎么办呢? 如何实现: 利用API先搜索到要去城 ...

  9. Android利用百度地图API实现定位功能(记录)

    本篇主要介绍一下如何使用百度地图API来实现定位以及地图的基本使用. 效果图如下: 步骤如下: 一.申请APIKey. (1)注册百度账号并申请开发者资质:http://developer.baidu ...

最新文章

  1. chrome扩展推荐:有我,你又省了一个ssh客户端 --- Secure Shell
  2. mysql存储过程写法—动态参数运用
  3. 【转载】windows mobile 上隐藏和关闭X以及OK的处理
  4. android 获取视频第一帧作为缩略图
  5. 机器学习中的常用概率分布
  6. apache+php windows下配置
  7. 单处理器调度算法详解
  8. pycharm中tensorflow代码不能自动补全或import红线问题解决
  9. Mongodb Manual阅读笔记:CH2 Mongodb CRUD 操作
  10. 封装自己的DB类(PHP)
  11. SQL Server 2008 R2安装步骤示例
  12. 简单企业网络搭建(基于华为eNSP模拟器)
  13. HDU-6357Hills And Valleys(用最长可重复公共子序列求最长非递减子序列)
  14. 市场营销人的高效办公神器
  15. 类模板与函数模板区别
  16. 陆道培医疗冲刺香港上市:持续亏损,毛利率下滑,陆佩华为董事长
  17. bbr中的缩放因子BW_SCALE/BBR_SCALE
  18. 戴记严选GM3323D 鼠标左右键失效 解决办法
  19. 流弊了!用Python分分钟把微信头像变卡通,油画,素描!
  20. ​2022年云市场营收排行榜

热门文章

  1. 堡塔负载均衡使用教程
  2. 一次Spring技术的面试,被面试官怼的怀疑人生。。
  3. 【Unity2D】GameOver制作人物游戏结束菜单
  4. C语言中->、.、、*、**各符号的区别
  5. 神经网络语言模型详解
  6. 有哪些信息安全/网络安全/渗透测试/众测/CTF/红蓝攻防/漏洞测试等前沿技术/研究/技巧获取渠道?
  7. 制作一个答题系统,随机出现二十道题.
  8. 关于WPA/WPA2 4次握手
  9. Shell中使用sed解析cfg文件
  10. 绘制tRNAscan-SE生成的二级结构