公司新闻

将想法与观点,与您一起分享~

开发案例插画 插画-树 插画-树

重庆网站建设html定位获取用户的经纬度,转成省市区

润雪科技 时间:2021-03-15 10:21 浏览量:1980

在重庆网站建设中,经常会用到用户的位置信息,主要又两种办法:

1、用户的ip来定位,只能定位到城市,但是要定位到详细的区县就不得行了

    参考这篇文章:如何用ip定位

2、用html5的特性来定位,可以定位到用户的详细经纬度(当前页会有偏差),然后在用经纬度转换成省市区


1、先获取用户的经纬度,html前端js代码如下,注意,经过我们测试,网站必须要用https才能获取定位,http是无法定位的

<script type="text/javascript">
	//必须整站都用https	
	window.addEventListener('load', function() {
        if (navigator.geolocation) {
            navigator.geolocation.watchPosition(update,function(){
				console.log('无法获取您的位置信息!');
			});
        }
    }, false);

    function update(position) {
        var lat = position.coords.latitude;
        var lng = position.coords.longitude;
        console.log('维度:' + lat + ', 经度:' + lng);
    }
	
</script>


2、获取到用户的经纬度后,在用百度的api把经纬度转成省市区

百度文档地址:http://lbsyun.baidu.com/index.php?title=webapi/guide/webservice-geocoding-abroad

接口请求地址:

http://api.map.baidu.com/reverse_geocoding/v3/?ak=您的ak&output=json&coordtype=wgs84ll&location=31.225696563611,121.49884033194  //GET请求

请求参数:

参数名参数含义类型举例默认值是否必须
location根据经纬度坐标获取地址。
float38.76623,116.43213

lat<纬度>,lng<经度>

coordtype坐标的类型,目前支持的坐标类型包括:bd09ll(百度经纬度坐标)、bd09mc(百度米制坐标)、gcj02ll(国测局经纬度坐标,仅限中国)、wgs84ll( GPS经纬度) 坐标系说明stringbd09ll、gcj02llbd09ll

ret_coordtype可选参数,添加后返回国测局经纬度坐标或百度米制坐标 坐标系说明stringgcj02ll(国测局坐标,仅限中国)、bd09mc(百度墨卡托坐标)bd09ll(百度经纬度坐标)
radius
poi召回半径,允许设置区间为0-1000米,超过1000米按1000米召回。
int500
1000
ak用户申请注册的key,自v2开始参数修改为“ak”,之前版本参数为“key” 申请akstringE4805d16520de693a3fe70
sn若用户所用ak的校验方式为sn校验时该参数必须 
sn生成
string

output输出格式为json或者xmlstringjson或xmlxml
callback将json格式的返回值通过callback函数返回以实现jsonp功能stringcallback=showLocation(JavaScript函数名)
poi_types
可以选择poi类型召回不同类型的poi,例如poi_types=酒店,如想召回多个POI类型数据,可以‘|’分割
例如poi_types=酒店|房地产
不添加该参数则默认召回全部POI分类数据。poi分类
string
poi_types=酒店
poi_types=酒店|房地产
extensions_poi
extensions_poi=0,不召回pois数据。
extensions_poi=1,返回pois数据(默认显示周边1000米内的poi),并返回sematic_description语义化数据。

string
0
extensions_road
当取值为true时,召回坐标周围最近的3条道路数据。区别于行政区划中的street参数(street参数为行政区划中的街道,和普通道路不对应)。
string
false、truefalse
extensions_town
当取值为true时,行政区划返回乡镇级数据(town),仅国内召回乡镇数据。默认不访问。
string
true
language
指定召回的行政区划语言类型。
召回行政区划语言list(全量支持的语言见示例)。
当language=local时,根据请求中坐标所对应国家的母语类型,自动选择对应语言类型的行政区划召回。
目前支持多语言的行政区划区划包含country、province、city、district
string
el gu en vi ca it iw sv eu ar cs gl id es en-GB ru sr nl pt tr tl lv en-AU lt th ro fil ta fr bg hr bn de hu fa hi pt-BR fi da ja te pt-PT ml ko kn sk zh-CN pl uk sl mr 
local
en,国内默认zh-CN
language_auto
当用户指定language参数时,是否自动填充行政区划。
1填充,0不填充。
填充:当服务按某种语言类别召回时,若某一行政区划层级的语言数据未覆盖,则按照“英文→中文→本地语言”类别行政区划数据对该层级行政区划进行填充,保证行政区划数据召回完整性。
int0、1

返回结果参数:

名称
含义类型
status
返回结果状态值, 成功返回0,其他值请查看下方返回码状态表。int
location
经纬度坐标object

lat纬度值float

lng经度值float
formatted_address
结构化地址信息string
business
坐标所在商圈信息,如 "人民大学,中关村,苏州街"。最多返回3个。string
addressComponent
(注意,国外行政区划,字段仅代表层级)
country
国家
string
country_code
国家编码int
country_code_iso
国家英文缩写(三位)string
country_code_iso2
国家英文缩写(两位)
string
province
省名
string
city
城市名
string
city_level
城市所在级别(仅国外有参考意义。国外行政区划与中国有差异,城市对应的层级不一定为『city』。country、province、city、district、town分别对应0-4级,若city_level=3,则district层级为该国家的city层级)int
district
区县名
string
town乡镇名,需设置extensions_town=true时才会返回string
town_code
乡镇idstring
street
街道名(行政区划中的街道层级)
string
street_number
街道门牌号
string
adcode
行政区划代码
int
direction
相对当前坐标点的方向,当有门牌号的时候返回数据
string
distance
相对当前坐标点的距离,当有门牌号的时候返回数据
string
pois(周边poi数组)
addr
地址信息
string
cp
数据来源(已废弃)
string
direction
和当前坐标点的方向
string
distance
离坐标点距离
int
name
poi名称
string
tag
poi类型,如’美食;中餐厅’。tag与poiType字段均为poi类型,建议使用tag字段,信息更详细。poi详细类别
string
point
poi坐标{x,y}
float
tel
电话
int
uid
poi唯一标识
string
zip
邮编
int
parent_poi
poi对应的主点poi(如,海底捞的主点为上地华联,该字段则为上地华联的poi信息。如无,该字段为空),包含子字段和pois基础召回字段相同。

roads
name周边道路名称string
distance传入的坐标点距离道路的大概距离string
poiRegions
direction_desc
请求中的坐标与所归属区域面的相对位置关系string
name
归属区域面名称string
tag
归属区域面类型string
sematic_description
当前位置结合POI的语义化结果描述。需设置extensions_poi=1才能返回。
string
cityCode
百度定义的城市id(正常更新与维护,但建议使用adcode)
int


来源声明:本文【重庆网站建设html定位获取用户的经纬度,转成省市区】由润雪科技编辑原创或采编整理,如需转载请注明来自润雪科技。以上内容部分(包含图片、文字)来源于网络,如有侵权,请及时与本站联系。

TAG标签:网站开发 网站设计

相关文章
  • php用Mpdf将html文档转为pdf

    php用Mpdf将html文档转为pdf

    php将html文档转成pdf保存到服务器

  • php用libreoffice将ppt转为pdf

    php用libreoffice将ppt转为pdf

    1、先安装libreoffice:yum install libreoffice;2、由于ppt中都是中文,执行命令转ppt的时候中文可能乱码,我的解决办法是在liunx系统中安装中文字体,把windows的字体直接全部拷贝到liunx服务器中,直接把所有字体都上传到服务器

  • php利用imagick扩展将pdf导出成图片

    php利用imagick扩展将pdf导出成图片

    需要先安装php的imagick扩展,两种方式,第一种是使用php,第二种是使用命令执行;随便用哪种执行需要修改nginx配置文件增加:proxy_read_timeout 600s;使其链接60秒后不断,不然pdf一旦过大60秒无法完成工作就断开链接了

  • apache配置转发,如使用workerman 或 webman等框架的时候配合apache

    apache配置转发,如使用workerman 或 webman等框架的时候配合apache

    在使用workerman 或 webman等框架开发应用的时候需要配合nginx 或 apache进行转发,官网的文档只有写nginx,下面的apache的配置,前提是apche需要开启这两个模块

  • 一个class类几个函数即可调用各种微信支付场景

    一个class类几个函数即可调用各种微信支付场景

    真在的只需要一个class类文件几个函数就可以调用微信的所有支付,不管是微信公众号、h5、app、小程序支付,加密方式都是一样的,对比下微信的支付文档,只需要修改第一步传入的参数不同,下单地址不同,加密方式都是一样的,所以只要看懂下面的第一个函数,将搞定微信的任何支付。

  • 重庆网站建设mysql计算经纬度距离排序方法

    重庆网站建设mysql计算经纬度距离排序方法

    我们最近在开发一个交友聊天类的app,需要计算用户与用户之间的距离,然后通过距离来排序,距离排序还是比较简单的,因为现在可以直接使用mysql来完成了。

如果您感觉我们的案例非常不错,请与我们取得联系~
立即咨询
获取方案及报价 023-6288-5285
网站建设流程 需求沟通
网站建设流程 签订合同
网站建设流程 项目开发
网站建设流程 上线/运营维护

张经理

186-9655-6121

邹经理

188-1980-6503

润雪科技二维码
电话咨询 在线咨询 微信咨询