你已经尝试了什么?
“最难”的部分可能是验证他们输入的地址……但有一些 API 可以让这变得非常简单。我在 SmartyStreets 工作,LiveAddress API就是您可以使用的此类服务之一。一个简单的 HTTPS 请求可以为您提供建议/候选地址的列表。例如:
https://api.smartystreets.com/street-address?street=1600+amphitheatre+parkway&city=mtn+view&state=ca&zipcode=&auth-id=<your auth ID>&auth-token=<your API key>
结果将是:
[
{
"input_index":0,
"candidate_index":0,
"delivery_line_1":"1600 Amphitheatre Pkwy",
"last_line":"Mountain View CA 94043-1351",
"delivery_point_barcode":"940431351000",
"components":
{
"primary_number":"1600",
"street_name":"Amphitheatre",
"street_suffix":"Pkwy",
"city_name":"Mountain View",
"state_abbreviation":"CA",
"zipcode":"94043",
"plus4_code":"1351",
"delivery_point":"00",
"delivery_point_check_digit":"0"
},
"metadata":
{
"record_type":"S",
"county_fips":"06085",
"county_name":"Santa Clara",
"carrier_route":"C058",
"congressional_district":"14",
"rdi": "Commercial",
"latitude": 37.41907,
"longitude": -122.07764,
"precision": "Zip7"
},
"analysis":
{
"dpv_match_code":"Y",
"dpv_footnotes":"AABB",
"dpv_cmra":"N",
"dpv_vacant":"N",
"ews_match":false,
"footnotes":"B#N#"
}
}
]
如果地址不明确,将返回一些选项,您可以将这些选项显示给用户,以便他/她选择其中之一。
你提到了邮政编码:还有一个 SmartyStreets 端点来验证邮政编码和城市/州。
为了在地图上显示标记,Google Maps API 提供了可用的功能。