Когда посетитель вводит какую-либо информацию на ваш веб-сайт, важно убедиться, что эта информация действительна. В противном случае небольшие ошибки, такие как орфографические ошибки, могут снизить ценность полученной информации. Это особенно верно, когда речь идет о данных о местоположении — но, к счастью, для этого есть API. Наша конечная точка Validation API предлагает более дюжины итераций адреса/геолокации; В этой статье я покажу, как можно быстро и легко проверять данные города и штата/провинции, структурируя вызов API в JavaScript. Вы можете использовать этот API бесплатно, зарегистрировав бесплатную учетную запись на нашем веб-сайте с ограничением в 800 вызовов API в месяц.

Давайте начнем со структурирования нашего вызова, используя функцию XHR в JavaScript. Вы можете сделать это, просто скопировав и вставив приведенный ниже фрагмент кода:

var data = JSON.stringify({
     "City": "<string>",
     "StateOrProvince": "<string>",
     "CountryFullName": "<string>",
     "CountryCode": "<string>"
});
var xhr = new XMLHttpRequest();
xhr.withCredentials = true;
xhr.addEventListener("readystatechange", function() {
     if(this.readyState === 4) {
          console.log(this.responseText);
     }
});
xhr.open("POST", "https://api.cloudmersive.com/validate/address/city");
xhr.setRequestHeader("Content-Type", "application/json");
xhr.setRequestHeader("Apikey", "YOUR-API-KEY-HERE");
xhr.send(data);

Чтобы вместо этого использовать jQuery, сначала выполните следующую команду установки:

bower install jquery

Затем используйте следующий фрагмент для вызова API:

var settings = {
     "url": "https://api.cloudmersive.com/validate/address/city",
     "method": "POST",
     "timeout": 0,
     "headers": {
          "Content-Type": "application/json",
          "Apikey": "YOUR-API-KEY-HERE"
     },
     "data": JSON.stringify({
          "City": "<string>",
          "StateOrProvince": "<string>",
          "CountryFullName": "<string>",
          "CountryCode": "<string>"
     }),
};
$.ajax(settings).done(function (response) {
     console.log(response);
});