Я заглиблююсь у розробку API RESTful і до цього часу працював з кількома різними рамками для досягнення цього. Звичайно, я зіткнувся з політикою того самого походження, і тепер мені цікаво, як веб-сервери (а не веб-браузери) їх застосовують. З того, що я розумію, здається, що деякі вимоги відбуваються в кінці браузера (наприклад, вшанування заголовка Access-Control-Allow-Origin, отриманого від сервера). А як щодо сервера?
Наприклад, веб-сервер розміщує веб-додаток Javascript, який має доступ до API, також розміщеного на цьому сервері. Я припускаю, що сервер запроваджував би політику одного і того ж джерела --- так що тільки JavaScript, який розміщений на цьому сервері, отримав би доступ до API. Це не дозволить комусь іншому писати клієнт JavaScript для цього API та розміщувати його на іншому сайті, правда? То як веб-сервер зможе зупинити зловмисного клієнта, який намагатиметься робити запити AJAX до своїх кінцевих точок API, претендуючи на те, що він працює на JavaScript, що походить з того самого веб-сервера? Яким чином найбільш популярні сервери (Apache, nginx) захищають від подібної атаки? Або моє розуміння цього якось поза межею?
Або політика перехресного походження застосовується лише в кінці клієнта?