我们的业务是一个物流系统,我们需要对用户输入的地址进行校验合法性,目前对接的是谷歌的 maps.googleapis.com 接口,但是这个接口对小国家的支持性很差,至少 100 多个国家是不支持的,而我们业务目前是全球的,但优点是特别快,300ms 就能返回结果。 有大佬做过这种全球地址校验么?想咨询一下 下面是我的请求例子
curl --location --request GET 'https://maps.googleapis.com/maps/api/geocode/json?address=3659200,ISRAEL&key=xxxxx' \ --header 'User-Agent: Apifox/1.0.0 ( https://apifox.com)' \ --header 'Accept: */*' \ --header 'Host: maps.googleapis.com' \ --header 'Connection: keep-alive' { "results": [ { "address_components": [ { "long_name": "Israel", "short_name": "IL", "types": [ "country", "political" ] } ], "formatted_address": "Israel", "geometry": { "bounds": { "northeast": { "lat": 33.33280500000001, "lng": 35.896244 }, "southwest": { "lat": 29.47969999999999, "lng": 34.2673436 } }, "location": { "lat": 31.046051, "lng": 34.851612 }, "location_type": "APPROXIMATE", "viewport": { "northeast": { "lat": 33.33280500000001, "lng": 35.896244 }, "southwest": { "lat": 29.47969999999999, "lng": 34.2673436 } } }, "partial_match": true, "place_id": "ChIJi8mnMiRJABURuiw1EyBCa2o", "types": [ "country", "political" ] } ], "status": "OK" }
![]() | 1 ratazzi 57 天前 全球做不到的,也就能验证个邮编 Google 也有地址验证 api ,但好像也就美国数据比较好,其实就是 USPS 的 如果自己做到话 加拿大,澳大利亚也有数据 欧洲也就 德国适合,英国验证个邮编也就行了 还有些国家邮编都没有 结论是做这个比做整个物流系统都复杂,更不可能做全球,还会遇到大量文字的坑 |
2 clarkethan 57 天前 我之前做了一个自用,基于 osm 和其他可以拿到的数据源,自己清洗提取,只能说,勉强能用,小点的国家,错误率很高,每周自动更新一次数据,更新数据的负担也不小 |
![]() | 5 ratazzi 57 天前 做这个其实没人买账的,投入太大,实际下单的数据其实很糟糕的,客户下频繁报错会骂人的,没人会为了能拦截几个错误地址买单 |
![]() | 6 daxiongz 57 天前 手机号/邮箱这些更重要吧,可以联系到用户,地址错了就错了吧 ,还有手抖写错的 |