uni-app根据经纬度逆解析详细地址

uni-app中的getLocation()方法可以获取到用户当前的地理位置(经纬度)、速度。


但是返回参数中的address在app中才会显示,小程序中不会显示,所以我们需要进行逆解析其地址,解析出它的地址信息。

1.首先要在腾讯位置服务中"控制台>应用管理>我的应用"中添加应用并生成Key

注意填写的appid是你项目用的appid,如果是测试,则勾选域名白名单即可,如果是正式项目,则需要在文本框里填写具体,(可选项:勾选授权ip,并将你本机电脑的ip及测试环境和正式环境的域名ip填入其中,勾选serveiceApi,里面写入域名)

2.去小程序后台开发管理-开发工具-服务器域名配置添加(https://apis.map.qq.com),添加完成之后去重新编译一下小程序并去开发者工具项目配置中刷新,如果看到有这个域名了则代表添加成功了

3.到这一步前期的准备工作已经做完了,接下来就直接上代码按钮

cpp 复制代码
			getLocation() {
				let that = this
				uni.getLocation({
					type: 'wgs84',
					success: (res) => {
						let location = res.latitude + ',' + res.longitude
						//调用逆解析接口
						uni.request({
							url: 'https://apis.map.qq.com/ws/geocoder/v1/?location=location',//腾讯官方逆解析接口,可直接复制
							data: {
								location: location,
 
								'key': "xxxx-xxxx-xxxx-xxxx-xxxx-xxxx",//自己申请的Key
							},
							method: "GET",
							success(res) {
								console.log(res,'解析成功返回的参数');
							},
                            fail: res=> {
						        console.log(res.errMsg,'解析失败返回的错误信息');
					        }
						})
						//服务器域名的配置文件中"request合法域名"中需要添加调用的"https://apis.map.qq.com"
 
					}
				});
			},

请求成功后会得到如下图所示的返回参数

相关推荐
无尽的沉默5 分钟前
Thymeleaf 基本语法和表达式
java·开发语言
此生只爱蛋10 分钟前
【MySQL】变量
数据库·mysql
Coder_Boy_12 分钟前
Java后端核心技术体系全解析(个人总结)
java·开发语言·spring boot·分布式·spring cloud·中间件
南部余额18 分钟前
函数式接口 Lambda 表达式好搭档:Predicate、Function、Consumer、Supplier
java·开发语言·consumer·lambda·function·predicate·supplier
柒.梧.26 分钟前
拆解Spring核心:IOC与AOP底层原理
数据库
Java后端的Ai之路31 分钟前
【JDK】-JDK 17 新特性整理(比较全)
java·开发语言·后端·jdk17
小小小米粒35 分钟前
Spring Boot Starter ,不止是 “打包好配置的工具类包”
java·开发语言
一个天蝎座 白勺 程序猿44 分钟前
国产数据库破局之路——KingbaseES与MongoDB替换实战:从场景到案例的深度解析
开发语言·数据库·mongodb·性能优化·kingbasees·金仓数据库
thginWalker1 小时前
演进篇 · 维护篇
服务器·数据库