如何使用Angular从用户那里检索地理位置[重复]
Posted
技术标签:
【中文标题】如何使用Angular从用户那里检索地理位置[重复]【英文标题】:How to retrieve geographical location from users using Angular [duplicate] 【发布时间】:2018-05-24 13:25:52 【问题描述】:我正在使用 Angular 和 Openlayers 库进行编程。 我想使用这个 API:https://adresse.data.gouv.fr/api(页面是法语,所以我会解释目的)
此 API 的目标一方面是在构建 GeoJSON 文件时搜索地图上的某些地址,另一方面是使用反向地理编码。这就是为什么我需要用户提供地理位置。
例如这个请求:http 'https://api-adresse.data.gouv.fr/search/?q=8 bd du port'
将返回世界上所有回答名称“8 bd du port”的街道
所以我想使用反向地理编码并创建这样的请求:http 'https://api-adresse.data.gouv.fr/reverse/?lon=user_lon&lat=user_lat'
这是最好的方法吗?我不想使用像 Google 之类的其他 API
【问题讨论】:
无重复,我不想使用 Google API,我正在寻找一种使用 Angular 的方法 最受好评的答案表示使用浏览器的地理定位 API。它只提到了 google API 作为一种解决方法 这个问题没有回答我的问题,我想知道用 Angular 实现定位的最佳方法(这篇文章不是这样,因为我知道 Angular 是不同的) 你的问题是关于从用户那里检索地理位置。 Angular 在浏览器中运行。浏览器提供了一个地理定位 API。我不确定你想要更多... 【参考方案1】:您可以为此使用 html 标准 Geolocation api。
getLocation(): void
if (navigator.geolocation)
navigator.geolocation.getCurrentPosition((position)=>
const longitude = position.coords.longitude;
const latitude = position.coords.latitude;
this.callApi(longitude, latitude);
);
else
console.log("No support for geolocation")
callApi(Longitude: number, Latitude: number)
const url = `https://api-adresse.data.gouv.fr/reverse/?lon=$Longitude&lat=$Latitude`
//Call API
【讨论】:
这段代码我有几个错误,问题来自:
字符
你用的是angular还是angularjs?
我正在使用 Angular 6
我不确定,这与 Angular 6 完美搭配,看here
我弄错了对不起,好的,那我试试这个,谢谢!以上是关于如何使用Angular从用户那里检索地理位置[重复]的主要内容,如果未能解决你的问题,请参考以下文章
从不同操作系统检索到的故障转储指向消息循环。如何从那里到达故障位置? (TeamViewer 使我的进程崩溃。)
MSAL Angular:如何从 JWT 令牌中检索用户角色?