如何使用 Angular 从用户那里检索地理位置
How to retrieve geographical location from users using Angular
我在 Angular with Openlayers 图书馆编程。
我想使用这个 API : https://adresse.data.gouv.fr/api (该页面是法语的,所以我会解释用途)
这个API的目标一方面是在构建GeoJSON文件时在地图上搜索一些地址,另一方面是使用反向地理编码。这就是为什么我需要用户的地理位置。
例如,此请求:http 'https://api-adresse.data.gouv.fr/search/?q=8 bd du port'
将 return 世界上所有街道都响应名称“8 bd du port”
所以我想使用反向地理编码并创建这样的请求:http 'https://api-adresse.data.gouv.fr/reverse/?lon=user_lon&lat=user_lat'
这是最好的方法吗?我不想使用另一个 API 比如 Google 一个
您可以为此使用 HTML 标准地理定位 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 with Openlayers 图书馆编程。 我想使用这个 API : https://adresse.data.gouv.fr/api (该页面是法语的,所以我会解释用途)
这个API的目标一方面是在构建GeoJSON文件时在地图上搜索一些地址,另一方面是使用反向地理编码。这就是为什么我需要用户的地理位置。
例如,此请求:http 'https://api-adresse.data.gouv.fr/search/?q=8 bd du port'
将 return 世界上所有街道都响应名称“8 bd du port”
所以我想使用反向地理编码并创建这样的请求:http 'https://api-adresse.data.gouv.fr/reverse/?lon=user_lon&lat=user_lat'
这是最好的方法吗?我不想使用另一个 API 比如 Google 一个
您可以为此使用 HTML 标准地理定位 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
}