Страна, штат, провинция Веб-сервис?[закрыто]

StackOverflow https://stackoverflow.com/questions/121117

  •  02-07-2019
  •  | 
  •  

Вопрос

Существуют ли какие-либо хорошие веб-сервисы, которые предоставляют хорошую информацию для поиска по странам и штатам/провинциям?

Если да, то какие вы используете?

Это было полезно?

Решение

Если вам нужна только информация из США, Почтовая служба США предоставляет набор веб-сервисов, которые они называют WebTools именно для этой цели. https://www.usps.com/business/web-tools-apis/welcome.htm.Вам нужно будет зарегистрироваться, чтобы иметь возможность использовать их, но как только вы зарегистрируетесь, ими будет очень просто пользоваться.Вы просто отправляете XML-запрос по HTTP, а сервер отправляет обратно XML-ответ, и вам просто нужно его распаковать.

Запрос образца:

http://SERVERNAME/ShippingAPITest.dll?API=Verify&XML=<AddressValidateRequest%20USERID="xxxxxxx"><Address ID="0"><Address1></Address1><Address2>6406 Ivy Lane</Address2><City>Greenbelt</City><State>MD</State><Zip5></Zip5><Zip4></Zip4></Address></AddressValidateRequest>

Пример ответа:

<?xml version="1.0"?>
<AddressValidateResponse>
     <Address ID="0">
         <Address2>6406 IVY LN</Address2>
         <City>GREENBELT</City>
         <State>MD</State>
         <Zip5>20770</Zip5>
         <Zip4>1441</Zip4>
     </Address>
</AddressValidateResponse>

Вот ссылка на техническую документацию:https://www.usps.com/business/web-tools-apis/documentation-updates.htm

Другие советы

http://www.geonames.org/

Это лучшее, что я нашел.Они позволяют вам самостоятельно загружать и размещать веб-сервис, что тоже приятно.

Службы, которые хорошо работают с .Net (поскольку они используют WSDL), http://www.webservicex.net.У них есть сервис для почтовых индексов США, доступный по адресу http://www.webservicex.net/uszip.asmx.Вы можете просто добавить его как службу, а Visual Studio позаботится обо всем остальном.Ответ приходит в виде ответа XML, поэтому вам придется его проанализировать, но вы можете использовать что-то простое, например USZIP.GetInfoByZIP(ZIP).SelectSingleNode("//STATE").InnerText.

Затем для своего приложения я создал кэш данных в памяти, используя XML, следуя следующим указаниям: http://www.15секунды.com/issue/010410.htm.Я использовал XML вместо HashTable или Dictionary(TKey, TValue) потому что я хотел иметь возможность сериализовать его в строку, чтобы сохранить «базу данных» как настройку пользователя.

Хорошим источником географических данных, включая поисковые и картографические данные по США, является Бюро переписи населения США. ТИГР Набор данных.Они больше не отслеживают данные почтового индекса, но у них есть винтажный файл 1999 года до сих пор доступен.

Для стран список кодов стран ISO общедоступен.

Мне неизвестны ресурсы для получения информации за пределами США.

Лицензировано под: CC-BY-SA с атрибуция
Не связан с StackOverflow
scroll top