Каково назначение префикса ‘x-‘ в HTTP-заголовках?

«Каково назначение префикса ‘x-‘ в HTTP-заголовках?» — вопрос из категории Сети, который задают на 10% собеседований Java Разработчик. Ниже — развёрнутый ответ с разбором ключевых моментов.

Ответ

Префикс x- (например, X-Custom-Header) исторически использовался для обозначения нестандартных, экспериментальных или проприетарных HTTP-заголовков. Это соглашение помогало избежать конфликтов имен с будущими стандартными заголовками.

Текущий статус: Согласно RFC 6648, использование префикса x- больше не рекомендуется. Кастомные заголовки теперь можно регистрировать в IANA, а произвольные имена считаются безопасными.

Примеры:

# Устаревший стиль (не рекомендуется)
X-API-Key: abc123
X-Request-ID: 789

# Современный подход
API-Key: abc123
Request-ID: 789
App-Version: 2.1.0

Почему это важно: Понимание этого соглашения помогает работать с legacy-системами и правильно проектировать новые API, следуя актуальным стандартам.