Exportar (0) Imprimir
Expandir todo

Preflight Queue Request

Actualizado: noviembre de 2013

La operación Preflight Queue Request consulta las reglas de Uso compartido de recursos entre orígenes (CORS) para el servicio Cola antes de enviar la solicitud real. Un explorador web u otro agente de usuario envía una solicitud preparatoria que incluye el dominio de origen, el método y los encabezados para la solicitud real que el agente desea realizar. Si se ha habilitado CORS para el servicio Cola, el servicio Cola evalúa la solicitud preparatoria con las reglas de CORS que el propietario de la cuenta ha configurado mediante Set Queue Service Properties y acepta o rechaza la solicitud.

Para obtener más información acerca de CORS y la solicitud preparatoria, vea la especificación CORS y Compatibilidad con Uso compartido de recursos entre orígenes (CORS) para los Servicios de almacenamiento de Azure

Preflight Queue Request se puede especificar de la manera siguiente. Reemplace <account-name> por el nombre de la cuenta de almacenamiento. Reemplace <queue-resource> con el nombre del recurso de cola que va a ser el destino de la solicitud real:

 

Verbo de HTTP URI de solicitud Versión HTTP

OPTIONS

http://<account-name> .queue.core.windows.net/<queue-resource>

HTTP/1.1

Tenga en cuenta que el URI debe incluir siempre la barra diagonal (/) para separar el nombre de host de las partes de la ruta de acceso y de la consulta del URI. En el caso de esta operación, la parte de ruta de acceso del URI puede estar vacía o puede apuntar a cualquier recurso de cola. El recurso puede existir o no en el momento en que se realiza la solicitud preparatoria; la solicitud preparatoria se evalúa en el nivel de servicio según las reglas de CORS del servicio, por lo que la presencia o ausencia del nombre de recurso no afecta al éxito o el error de la operación.

Ninguno.

En la tabla siguiente se describen los encabezados de solicitud requeridos y opcionales.

 

Encabezado de solicitud Descripción

Origin

Requerido. Especifica el origen del que se emitirá la solicitud real. El origen se compara con las reglas de CORS del servicio para determinar el éxito o el error de la solicitud preparatoria.

Access-Control-Request-Method

Requerido. Especifica el método (o el verbo HTTP) de la solicitud real. El método se compara con las reglas de CORS del servicio para determinar el error o el éxito de la solicitud preparatoria.

Access-Control-Request-Headers

Opcional. Especifica los encabezados para los encabezados de solicitud reales que se enviarán; el servicio supone que no se envía ningún encabezado con la solicitud real.

La respuesta incluye un código de estado HTTP y un conjunto de encabezados de respuesta.

Una operación correcta devuelve el código de estado 200 (Correcto).

Para obtener información acerca de los códigos de estado, vea Códigos de estado y de error.

La respuesta para esta operación incluye los encabezados siguientes. La respuesta también puede incluir otros encabezados HTTP estándar. Todos los encabezados estándar cumplen la especificación del protocolo HTTP/1.1.

Vea la especificación CORS para obtener más información acerca de los encabezados de solicitud preparatoria.

 

Encabezado de respuesta Descripción

Access-Control-Allow-Origin

Origen permitido, que coincide con el encabezado de origen de la solicitud si la solicitud preparatoria se realizó correctamente.

Access-Control-Allow-Methods

Si la solicitud preparatoria se realiza correctamente, el encabezado se establece en el valor o los valores especificados para el encabezado de solicitud Access-Control-Request-Method.

Access-Control-Allow-Headers

Si la solicitud preparatoria se realiza correctamente, el encabezado se establece en el valor o los valores especificados para el encabezado de solicitud Access-Control-Request-Headers.

Access-Control-Max-Age

Especifica el tiempo que el agente de usuario puede almacenar en memoria caché la solicitud preparatoria para solicitudes futuras.

Access-Control-Allow-Credentials

Indica si la solicitud real se puede realizar mediante credenciales. Este encabezado siempre se establece en true.

La operación Preflight Queue Request autentica cualquier solicitud que incluya encabezados de autenticación adecuados o una firma de acceso compartido (SAS).

Las solicitudes anónimas no autenticadas también se procesarán independientemente de si el recurso existe o no, ya que las solicitudes preparatorias OPTIONS se evalúan con los valores de servicio de la cuenta.

En el ejemplo siguiente se envía una solicitud preparatoria para el origen www.contoso.com, el método de solicitud se establece en PUT y los encabezados de solicitud se establecen en content-type y accept.

OPTIONS http://myaccount.queue.core.windows.net/myqueue  HTTP/1.1
Accept: */*
Origin: www.contoso.com
Access-Control-Request-Method: PUT
Access-Control-Request-Headers: content-type, accept
Accept-Encoding: gzip, deflate
User-Agent: Mozilla/5.0 (compatible; MSIE 10.0; Windows NT 6.2; WOW64; Trident/6.0)
Content-Length: 0

La respuesta indica que CORS se ha habilitado para el servicio y que hay una regla de CORS que coincide con la solicitud preparatoria.

HTTP/1.1 200 OK
Connection: Keep-Alive
Content-Length: 0
Content-Type: text/html; charset=UTF-8
Access-Control-Allow-Origin: *
Access-Control-Max-Age: 60
Access-Control-Allow-Methods: PUT
Access-Control-Allow-Headers: accept,content-type

Si se ha habilitado CORS para el servicio y hay una regla de CORS que coincide con la solicitud preparatoria, el servicio responde a la solicitud preparatoria con el código de estado 200 (OK). La respuesta incluye los encabezados Access-Control necesarios. En este caso, se cobrará la solicitud.

Si CORS no se ha habilitado o no hay ninguna regla de CORS que coincida con la solicitud preparatoria, el servicio responde con el código de estado 403 (Forbidden). En este caso, no se cobrará la solicitud.

Si la solicitud OPTIONS es incorrecta, el servicio responde con el código de estado 400 (Bad Request) y la solicitud no se cobra. Un ejemplo de una solicitud incorrecta es aquella que no contiene los encabezados Origin y Access-Control-Request-Method necesarios.

Tenga en cuenta que la solicitud preparatoria es un mecanismo para consultar la capacidad de CORS de un servicio de almacenamiento asociado a una cuenta de almacenamiento determinada. La solicitud preparatoria no está destinada a un recurso específico.

Vea también

Mostrar:
© 2014 Microsoft