gpt4 book ai didi

google-maps - Google map : how to get country, 州/省/地区、城市给定纬度/经度值?

转载 作者:行者123 更新时间:2023-12-02 03:22:14 28 4
gpt4 key购买 nike

我需要一个基于我拥有的纬度/经度值集合的国家、州和城市列表。我需要以保留层次结构且不重复的方式存储此信息(例如“美国”和“美国”和“美利坚合众国”是同一个国家/地区;我只希望在我的数据库中存在该国家/地区的一个实例) .

这可以通过 Google Map API 实现吗?

最佳答案

您要查找的内容名为 reverse geocoding 。 Google 通过 Google Geocoding API 提供服务器端反向地理编码服务,您应该能够将其用于您的项目。

这是对以下请求的响应的样子:

http://maps.googleapis.com/maps/api/geocode/json?latlng=40.714224,-73.961452&sensor=false

回应:

{
"status": "OK",
"results": [ {
"types": [ "street_address" ],
"formatted_address": "275-291 Bedford Ave, Brooklyn, NY 11211, USA",
"address_components": [ {
"long_name": "275-291",
"short_name": "275-291",
"types": [ "street_number" ]
}, {
"long_name": "Bedford Ave",
"short_name": "Bedford Ave",
"types": [ "route" ]
}, {
"long_name": "New York",
"short_name": "New York",
"types": [ "locality", "political" ]
}, {
"long_name": "Brooklyn",
"short_name": "Brooklyn",
"types": [ "administrative_area_level_3", "political" ]
}, {
"long_name": "Kings",
"short_name": "Kings",
"types": [ "administrative_area_level_2", "political" ]
}, {
"long_name": "New York",
"short_name": "NY",
"types": [ "administrative_area_level_1", "political" ]
}, {
"long_name": "United States",
"short_name": "US",
"types": [ "country", "political" ]
}, {
"long_name": "11211",
"short_name": "11211",
"types": [ "postal_code" ]
} ],
"geometry": {
"location": {
"lat": 40.7142298,
"lng": -73.9614669
},
"location_type": "RANGE_INTERPOLATED",
"viewport": {
"southwest": {
"lat": 40.7110822,
"lng": -73.9646145
},
"northeast": {
"lat": 40.7173774,
"lng": -73.9583193
}
}
}
},

... Additional results[] ...

您还可以选择以 xml 而不是 json 形式接收响应,只需在请求 URI 中用 json 替换 xml 即可:

http://maps.googleapis.com/maps/api/geocode/xml?latlng=40.714224,-73.961452&sensor=false

据我所知,Google 还会为地址组件返回相同的名称,特别是对于国家/地区名称和城市名称等高级名称。尽管如此,请记住,虽然大多数应用程序的结果都非常准确,但您仍然可能会发现偶尔的拼写错误或不明确的结果。

关于google-maps - Google map : how to get country, 州/省/地区、城市给定纬度/经度值?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4013606/

28 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com