7

我有 5 位邮政编码,这些是从 Google Maps Api 检索的。

我的困境是我必须连接到一个也包含地址的远程数据库。如果该地址在该数据库中不存在,我必须编写它,如果它确实存在,那么除了存储数据库分配给该地址的 ID 之外,我什么也不做。出现问题是因为检查此数据库的 api 不使用通配符,该数据库中的地址具有 9 位邮政编码 (5+4),并且不会返回地址的其余部分与我的地址与 5 位邮政编码相匹配。

远程系统会告诉我该地址与我发送的地址不存在。

因此,为了防止将重复的地址写入数据库,我需要在发送之前找到我拥有的邮政编码的 9 位版本。

这将如何完成?是否有确定 5 位地址的最后 4 位是什么的公式?USPS 有 API 吗?人口普查有一张大桌子吗?

洞察力赞赏

4

2 回答 2

6

如果您使用 USPS 发送邮件,则仅允许使用 USPS API 获取信息...

但是您可以查看 SmartyStreets(我曾经在那里工作)或其他经过 CASS 认证的供应商。他们获得地址验证许可,您还可以在没有地址的情况下执行城邦和邮政编码查找(取决于您选择的人)。

我认为您会发现它们比默认的 USPS 网络服务更容易、更全面。

这里有一些示例代码......任你选择:https ://github.com/smartystreets/LiveAddressSamples

于 2013-02-22T22:03:16.317 回答
2

美国邮政服务有许多 API。他们的“地址信息 API”包括:

地址标准化

消除寻址错误并帮助确保准确及时地交付。此工具可纠正街道地址中的错误,包括缩写和缺失信息。它还提供 ZIP+4® 代码。

邮政编码™查找

查找美国任何给定地址、城市和州的匹配邮政编码或邮政编码 + 4 编码

城市/州查询

使用邮政编码获取准确的城市和州信息。

地址信息 API 需要使用权限。

于 2013-02-22T21:26:41.073 回答