Allow
Uso
Los servidores incluyen Allow para comunicar qué métodos de solicitud admite un recurso. La cabecera es obligatoria en las respuestas 405 Method Not Allowed, en las que el servidor informa al cliente sobre los métodos válidos para el URI solicitado.
La cabecera aparece también en las respuestas a las solicitudes OPTIONS. Una solicitud OPTIONS pide al servidor que describa las opciones de comunicación disponibles para un recurso, y Allow proporciona en la respuesta la lista de métodos permitidos.
El valor es una lista separada por comas de nombres de métodos HTTP estándar. La lista refleja los métodos que el recurso acepta en el momento de la respuesta. Una cabecera Allow vacía indica que actualmente no se acepta ningún método, algo que ocurre cuando un servidor restringe temporalmente el acceso a un recurso.
La cabecera Allow describe el recurso de destino, no el servidor en su conjunto. A menudo, distintos recursos del mismo servidor admiten conjuntos de métodos diferentes. Un punto de acceso de colección puede aceptar GET y POST, mientras que un recurso individual admite GET, PUT y DELETE.
method-list
Una lista separada por comas de nombres de métodos HTTP. Entre los valores habituales se incluyen:
Allow: GET, HEAD, POST
Ejemplo
Un cliente envía una solicitud DELETE a un recurso que solo admite GET y POST. El servidor responde con 405 e incluye la cabecera Allow con los métodos válidos.
HTTP/1.1 405 Method Not Allowed
Allow: GET, POST
Content-Type: application/json
Una respuesta a una solicitud OPTIONS muestra todos los métodos que acepta el recurso. El método HEAD está disponible de forma implícita cuando se admite GET.
HTTP/1.1 200 OK
Allow: GET, HEAD, PUT, DELETE
Content-Length: 0
Una respuesta 201 Created posterior a un POST incluye Allow para indicar los métodos disponibles en el recurso recién creado.
HTTP/1.1 201 Created
Location: /items/42
Allow: GET, PUT, DELETE