高德开放平台 - 学习/实践

1.应用场景

借助高德开放平台进行项目的开发, 完成 业务需要, 如地理编码.

2.学习/操作

2.1 介绍

暂见: https://lbs.amap.com/dev/index  //高德开放平台开发者

https://lbs.amap.com/api/webservice/summary/  //Web服务API简介  推荐阅读

 

2.2 操作

2.2.1 登录, 下方是控制台页面  //这里是支付宝授权登录, 具体操作暂略, 暂未开发者认证.

 

2.2.2 地理编码

将现实中的物理地址][如咖啡店]转化为地图上的经纬度格式,这个过程叫做地理编码(Geocode)

https://xueyuanjun.com/post/9621

https://lbs.amap.com/api/webservice/guide/api/georegeo  //地理/逆地理编码

 

简单讲:

-- 地理编码:将详细的结构化地址转换为高德经纬度坐标。且支持对地标性名胜景区、建筑物名称解析为高德经纬度坐标。

结构化地址举例:北京市朝阳区阜通东大街6号转换后经纬度:116.480881,39.989410

地标性建筑举例:天安门转换后经纬度:116.397499,39.908722

 

-- 逆地理编码:将经纬度转换为详细结构化的地址,且返回附近周边的POI、AOI信息。

例如:116.480881,39.989410 转换地址描述后:北京市朝阳区阜通东大街6号

 

备注:

高德地图、百度地图、Google地图这些地图服务都提供了开放的 API

 

步骤

1. 获取高德地图 Web 服务 API Key

https://lbs.amap.com/api/webservice/guide/create-project/get-key

 

2. 添加 API Key 到配置文件

获取到 API Key 之后,我们将其添加到 Laravel 应用的配置文件中,方便后续调用,首先将 API Key 存储到 .env 里面:

GAODE_MAPS_WS_API_KEY={YOUR_API_KEY}

然后在 config/services.php 中引用:

'gaode' => [
    'ws_api_key' => env('GAODE_MAPS_WS_API_KEY'),
]

 

这样,我们就可以在编写代码时通过 config('services.gaode.ws_api_key') 获取 API Key 了。

 

3. 构建高德地图工具类

接下来,我们来创建一个工具类 GaodeMaps 用于调用高德地图 API 实现相关功能。首先创建一个 app\Utilities 目录,然后在该目录下创建 GaodeMaps 类文件,使用 PHPStorm 的话会自动生成如下代码:

<?php
namespace App\Utilities;

class GaodeMaps
{

}

接下来我们就要编写地理编码实现代码了。

 

4. 安装 Guzzle HTTP 扩展包

由于我们是在 Laravel 后端发起 API 请求,所以在调用高德地图 API 之前需要安装相应的网络扩展包发送 HTTP 请求,这里我们使用 Guzzle HTTP 扩展包,如果你已经安装过这个扩展包,可以跳过本步骤,否则可以通过 Composer 进行安装:

composer require guzzlehttp/guzzle

5. 添加地理编码方法到工具类

做好以上准备工作后,接下来开始正式编写将咖啡店地址信息转化为经纬度的地理编码处理逻辑,在开始编写代码之前建议翻阅下高德地图提供的地理编码文档,以便熟悉相关的 API 方法和返回字段,我们在上面创建的 GaodeMaps 类中定义一个静态方法 geocodeAddress 来实现地理编码:

TBD

 

后续补充

...

3.问题/补充

TBD

4.参考

https://lbs.amap.com/dev/index  //高德开放平台开发者

https://xueyuanjun.com/post/9621  //通过高德地图 Web 服务 API 对咖啡店地址进行地理编码

https://lbs.amap.com/api/webservice/summary/  //Web服务API简介  推荐阅读

https://lbs.amap.com/api/webservice/guide/api/georegeo  //地理/逆地理编码

后续补充

...

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值