HTTP — протокол передачі даних, що використовується в комп'ютерних мережах, належить до протоколів моделі OSI 7-го програмного рівня.
Основним призначенням протоколу HTTP є передача веб-сторінок, хоча за допомогою його можна передавати й інші файли, які пов'язані з веб-сторінками (зображення і додатки), так і не пов’язані з ними.
Класичний механізм взаємодії у Web відбувається так: браузер генерує HTTP запит і відправляє його на сервер. Сервер оброблює запит і відправляє відповідь клієнту у вигляді готової HTML сторінки, яку браузер показує користувачу. Для кожного обміну даними між сервером та клієнтом потрібен окремий запит (перезавантаження сторінки).
Є два основні види запитів до сервера — GET та POST.
Згідно стандарту HTTP запити типу GET вважаються «безпечними» — багаторазове повторення одного і того ж запиту призводить до одного і того ж результату. Це дозволяє кешувати відповіді на HTTP запити з типом GET.
За допомогою GET не можна передавати великі об’єми даних та файли.
POST- дані від клієнта до сервера передаються в тілі запиту і, при необхідності, можуть бути зашифрованими. На відміну від запиту з типом GET, запити з типом POST вважаються «небезпечними» — багатократне повторення одних і тих же запитів з типом POST може давати різні результати.
Також за допомогою POST запиту можлива передача файлів від клієнта до сервера. Переваги класичного механізму доступу до Web — підтримка будь-яким HTTP клієнтом (браузером, роботом пошукової системи і т.п.).