本文档介绍了美国特有的地址验证:
- 在工作流中使用 USPS 数据
- USPS 投递点验证字段 (dpv)
- 安全消息
工作流中的 USPS 数据
验证美国境内的地址时,Address Validation API 还可以填充返回结果的 uspsData 部分。
由于此对象并不总是填充,因此您不应依赖此属性作为验证地址的唯一方法,而应将判定结果和地址组成部分也纳入您的系统中。
USPS 投递点验证 (DPV)
作为 uspsData 响应的一部分,dpvConfirmation 字段会返回一个字符,让您知道 USPS 是否可以递送到提供的地址。
您可以使用此字段确定以下内容:
- 地址有效性。
- 如果地址中缺少子场所编号。
- 如果 USPS 数据系统中不存在子门牌号,则会显示此消息。
该服务会返回四个 dpvConfirmation 值之一,或者根本不返回 dpvConfirmation 值。下表显示了您的逻辑应针对 5 种可能的结果使用的推荐行为。如需详细了解此逻辑,请参阅构建验证逻辑中的工作流概览。
值 |
行为 |
说明 |
|---|---|---|
否 或为空 |
修正地址 |
地址未通过 DPV 确认。 这意味着 USPS 无法识别输入的街道(路线)上存在的输入门牌号,并且无法送达该地址。 |
D |
修正地址 |
地址仅针对主号码进行了 DPV 确认,缺少次要号码信息。 |
S |
确认地址 |
地址仅针对主门牌号进行了 DPV 确认,次门牌号信息存在但未确认。 这意味着,根据 USPS 的数据,输入的门牌号在输入的路线中存在,但提供的子门牌号在该建筑物中不存在。 |
是 |
接受地址 |
地址已通过 DPV 确认,包括主要和任何次要号码。 这意味着 USPS 可以完全送达该地址,包括子场所编号(如果适用)。 |
本部分的其余部分将讨论使用 DPV 代码的实际场景。
DPV N 示例 - 修正地址
此示例在原本有效的地址中使用了不存在的街道号码。
- 输入的地址:12 Amphitheatre Parkway, Mountain View, CA, 94043
- 地区:美国
dpvConfirmation字段会返回:N
这非常强烈地表明,此门牌号在此路线上不存在。与其他有问题的地址一样,您的系统应提示用户进行更正。
DPV D 示例 - 修正地址
此示例使用的是 Google 纽约办事处,但未包含子场所,而子场所是地址的必需部分。您可以使用演示中的地址(不含子场所信息)来查看此信息。
- 输入的地址:111 8th Avenue, New York, NY, 10011
- 地区:美国
dpvConfirmation字段会返回:D
这证实了输入中缺少子场所。若要获得 Y 的 DPV,输入内容中必须包含有效的子场所。例如,您可以添加有效的子场所 FL 4(4 楼),以获得 Y 的 dpvConfirmation 值。
DPV S 示例 - 确认地址
此示例使用的子门牌号在建筑物内不存在:
- 输入的地址:1600 Amphitheatre Parkway, Suite 101, Mountain View, CA, 94043
- 地区:美国
dpvConfirmation字段会返回:S
这表示,虽然 1600 Amphitheatre Parkway 是一个可以接收邮件的地址,但子场所 Ste 101 不是该地址的有效组成部分。您的系统应与用户确认此信息,并提供更正机会。
DPV Y 示例 - 接受地址
此示例使用位于加利福尼亚州山景城的 Googleplex 地址作为已知的高质量地址。
- 输入的地址:1600 Amphitheatre Parkway, Mountain View, CA, 94043
- 地区:美国
dpvConfirmation字段会返回:Y
该地址可由 USPS 完整送达。这让您有极高的信心,相信 API 返回的地址质量良好,您可以直接使用。
注意:DPV 不会指明 Address Validation API 是否对输入内容进行了任何更改,例如拼写更正。
针对美国地址的安全消息
本部分介绍了 USPS 数据中针对人工创建的地址提供的安全标志。这项安全措施旨在防止人为创建地址列表,具体做法是检测提交的地址是否似乎是人为构建而非合法获取。 这种情况应该非常罕见。
当 USPS 识别出人为创建的地址时,响应的 uspsData 属性的 errorMessage 字段会包含一条描述问题的出错提示。例如:
AMS API processing was terminated due to the detection of what is determined to
be an artificially created address. No address beyond this point has been
validated and/or processed. If you believe this address was identified in error,
please contact your Vendor.