USPS 地址验证失败
本文关键字:失败 验证 地址 USPS | 更新日期: 2023-09-27 18:36:33
验证地址时,出现此错误:
ex = {"Error Loading XML: The following tags were not closed: AddressValidateRequest, Address, Address1.'r'n"}
或者我收到另一个错误,说找不到地址。有没有更好的方法来验证此地址?
这是我的网址:
http://production.shippingapis.com/ShippingAPI.dll?API=Verify&XML=<AddressValidateRequest USERID="402JMAWE3481"><Address ID="1"><Address1>123 Main St</Address1><Address2></Address2><City>Watertown</City><State>MA</State><Zip5>02472</Zip5><Zip4></Zip4></Address></AddressValidateRequest>
根据我在错误描述中看到的内容,问题可能是您需要在将 xml 添加到 url 之前从 xml 中删除。不要忘记对它进行 url 编码。'r'n
你实际上需要对它进行 HtmlEncoding ,然后对它进行 UrlEncode 处理。这是因为您实际上是在发送 XML(需要 &
而不是 &
),但它是一个 URL,因此需要编码才能将每个&
转换为%26
这是一个完整的工作网址 - 你只需要输入你的用户ID。
http://production.shippingapis.com/ShippingAPI.dll?API=Verify&XML=<AddressValidateRequest USERID="123USERID567"><Address ID="1"><Address1></Address1><Address2>10051+Orr+%26amp%3b+Day+Rd</Address2><City>santa+fe+springs</City><State>ca</State><Zip5>90670</Zip5><Zip4></Zip4></Address></AddressValidateRequest>
你会看到它包含这个看起来很时髦的字符串:
10051+Orr+%26amp%3b+Day+Rd
我通过这样做得到了:
HttpUtility.UrlEncode(HttpUtility.HtmlEncode("10061 Orr & Day Rd"))
[当我没有正确编码时,我得到了这个特定的错误Error Loading XML: Whitespace is not allowed at this location
]