Как проверить данный адрес с помощью USPS?

Я хочу подтвердить данный адрес (адрес, город, штат, почтовый индекс) в USPS и вернуть результат, если указанный адрес является действительным адресом. и если это недействительный адрес, возвращает недопустимый адрес.

так как я могу сделать это в С#.Net.

Ответ 1

От здесь

///Create a new instance of the USPS Manager class
///The constructor takes 2 arguments, the first is
///your USPS Web Tools User ID and the second is 
///true if you want to use the USPS Test Servers.
USPSManager m = new USPSManager("YOUR_USER_ID", true);
Address a = new Address();
a.Address2 = "6406 Ivy Lane";
a.City = "Greenbelt";
a.State = "MD";

///By calling ValidateAddress on the USPSManager object,
///you get an Address object that has been validated by the
///USPS servers
Address validatedAddress = m.ValidateAddress(a);

ПРИМЕЧАНИЕ. По какой-то причине вам нужно поместить фактический адрес в адрес Address2. Если вы попытаетесь поместить Address1 в "6406 Ivy Lane", он потерпит неудачу. Адрес1, по-видимому, относится к номеру квартиры или номера. Courtesy Саймон Уивер ниже.

Ответ 2

Почтовая служба Соединенных Штатов (USPS) предлагает эту услугу через свои API-интерфейсы адресов:

Здесь статья/библиотека проекта кода, как вы можете использовать эти службы в .NET:

Примечание

  • Прежде чем вы сможете использовать эту библиотеку, вам нужно будет получить идентификатор веб-инструментов USPS, заполнив эту форму.

  • Чтобы запросить информационные информационные интерфейсы (Проверить и т.д.), вам понадобятся дополнительные разрешения. Также заполните этот form, чтобы применить эти разрешения.

Ответ 3

Если я могу прослушиваться здесь, я работал в индустрии проверки адресов для SmartyStreets, который является сертифицированным CASS поставщиком этих сервисов.

Прежде всего отметим, что, хотя USPS является авторитетом в адресных данных, их сильная сторона НЕ поддерживает API и обеспечивает поддержку. Кроме того, не забудьте отметить соглашение, которое вы подписали:

  • Пользователь соглашается использовать веб-сайт USPS, API и данные USPS для облегчения транзакций доставки USPS.

Таким образом, если вы не отправляете или не отправляете с USPS с помощью своего API, то вообще не рекомендуется использовать API. Это из-за других проблем, с которыми вы сталкиваетесь, является основанием для поиска лучшего решения - если бы я был вами.

Во всяком случае, на самом деле их довольно много. Я дам вам ваши собственные исследования, но, конечно, я бы предложил один из них, над которым я работал, под названием LiveAddress. Он бесплатный и возвращает больше данных и является более надежным, чем API USPS.

Обновление: Вот некоторые примеры кода С# на GitHub, которые, вероятно, будут полезны.