Google Places Autocomplete API未返回邮政编码,如何获取该字段?
如何从Google Places Autocomplete API获取邮政编码?
嘿,这个问题我之前也碰到过!Google Places Autocomplete API本身的定位是快速返回地址候选建议,所以不会包含完整的地址详情——包括你要的邮政编码。不过别担心,有个简单的解决办法:
核心思路
Autocomplete API只提供地址的基础候选信息和关键标识place_id,要拿到完整的地址细节(比如邮编),你需要用这个place_id调用Place Details API。
具体步骤
- 提取Place ID:从你当前的Autocomplete响应里拿到
place_id字段,比如你例子里的ChIJN9v2H4l744kRRg9DI6ctGhY。 - 调用Place Details API:构造如下请求(替换成你的API密钥):
https://maps.googleapis.com/maps/api/place/details/json?place_id=ChIJN9v2H4l744kRRg9DI6ctGhY&key=your_api_key - 提取邮政编码:在Place Details的响应里,找到
address_components数组,里面会有一个类型为postal_code的条目,它的long_name或short_name就是你要的邮编。比如响应片段:{
"address_components": [
// 其他地址组件
{
"long_name": "02116",
"short_name": "02116",
"types": ["postal_code"]
}
]
}
注意事项
- 确保你的API密钥已经启用了Place Details API权限,否则会返回权限错误。
- 这两个API都是计费的,记得关注你的Google Cloud控制台的使用量哦。
内容的提问来源于stack exchange,提问作者David
相关产品推荐
相关产品推荐

