Обов’язково прочитайте відповідь SilverlightFox. Це підкреслює більш важливу причину.
Причина, головним чином, полягає в тому, що якщо ви знаєте джерело запиту, ви можете трохи налаштувати його.
Наприклад, скажімо, що у вас є веб-сайт, який має багато рецептів. І ви використовуєте користувацьку рамку jQuery для переміщення рецептів у контейнер на основі посилання, яке вони клацають. Посилання може бутиwww.example.com/recipe/apple_pie
Зараз зазвичай це повертає повну сторінку, заголовок, колонтитул, вміст рецептів та оголошення. Але якщо хтось переглядає ваш веб-сайт, частина цих частин уже завантажена. Таким чином, ви можете використовувати AJAX, щоб отримати рецепт, який користувач обрав, але для економії часу та пропускної здатності не завантажуйте заголовок / колонтитул / оголошення.
Тепер ви можете просто написати вторинну кінцеву точку для таких даних, www.example.com/recipe_only/apple_pie
але це важче підтримувати та ділитися з іншими людьми.
Але простіше просто виявити, що це запит ajax, який робить запит, а потім повертає лише частину даних. Таким чином користувач витрачає меншу пропускну здатність, і сайт виглядає більш чуйним.
Каркаси просто додають заголовок, тому що деяким може бути корисним відслідковувати, які запити є ajax, а які ні. Але цілком залежить від розробника використовувати такі методи.
Це насправді схоже на Accept-Language
заголовок. Веб-браузер може надіслати запит на веб-сайт, будь ласка, покажіть мені російську версію цього веб-сайту без необхідності вставляти / ru / або подібне в URL-адресу.