Me preguntaba si es aceptable colocar datos personalizados en un encabezado de autorización HTTP. Estamos diseñando una API RESTful y es posible que necesitemos una forma de especificar un método personalizado de autorización. Como ejemplo, vamos a llamarlo autenticación FIRE-TOKEN
.Encabezado de autorización HTTP personalizado
¿Podría algo como esto sea válido y permitido según la especificación: Authorization: FIRE-TOKEN 0PN5J17HBGZHT7JJ3X82:frJIUN8DYpKDtOLCwo//yllqDzg=
La primera parte de la segunda cadena (antes de la ':') es la clave de la API, la segunda parte es un hash de la cadena de consulta .
Esto puede ser más difícil de conseguir la derecha de lo que parece. El enlace que proporciona fumanchu (en un comentario a su respuesta) explica por qué la introducción de un encabezado personalizado agrega la carga adicional de tener que configurar manualmente el Control de caché correctamente. –
Además, si realiza una solicitud de origen cruzado a través del navegador, ahora se encuentra en territorio de pre-vuelo solo por el encabezado personalizado donde de otra manera podría haberlo evitado. Para ciertas aplicaciones, estas solicitudes se suman. –
Enorme no a los encabezados de autenticación personalizados.El encabezado de especificación 'Autorización' con su propio esquema personalizado debería ser más que suficiente. Además, evita las solicitudes de origen previas al vuelo como lo indica @wilmoore. Los esquemas personalizados no interfieren con ningún servidor HTTP razonablemente moderno que yo sepa, y si usa su propio esquema, tendrá que analizarlo usted mismo; ninguna biblioteca debería entrar en conflicto (de lo contrario, la biblioteca no está bien escrita). –