Сначала вы должны понять, что AJAX-запрос - это HTTP-запрос. Когда вы добавляете
xmlhttp.setRequestHeader('Content-Type','XXXXXXXXX');
добавляет заголовок, который определяет, какие данные будут содержаться в теле запроса. application/x-www-form-urlencoded
означает, что данные будут данными формы. Формат данных может быть чем-то другим. Просто данные форм - это самая распространенная вещь, которую вы отправляете на сервер.