Este conteúdo foi traduzido por máquina para sua conveniência e a Huawei Cloud não pode garantir que o conteúdo foi traduzido com precisão. Para exibir o conteúdo original, use o link no canto superior direito para mudar para a página em inglês.
Atualizado em 2022-11-24 GMT+08:00

OPTIONS Objeto

Funções

Para mais detalhes, consulte OPTIONS Bucket.

Diferenças entre o OPTIONS Bucket e o OPTIONS Objeto

Com o OPTIONS Objeto, você precisa especificar um nome de objeto no URL, mas não é necessário um nome de objeto com o OPTIONS Bucket, que usa o nome de domínio do bucket como o URL. As linhas de solicitação dos dois métodos são as seguintes:

OPTIONS /object HTTP/1.1
OPTIONS / HTTP/1.1

Sintaxe da solicitação

1
2
3
4
5
6
OPTIONS /object HTTP/1.1 
Host: bucketname.obs.region.myhuaweicloud.com 
Date: date
Authorization: authorization
Origin: origin
Access-Control-Request-Method: method

Parâmetros de solicitação

Esta solicitação não contém nenhum parâmetro.

Cabeçalhos de solicitação

Tabela 1 descreve os cabeçalhos usados por essa solicitação.

Tabela 1 Cabeçalhos de solicitação OPTIONS

Cabeçalho

Descrição

Obrigatório

Origin

Origin da solicitação de cross-domain especificada pela pré-solicitação. Geralmente, é um nome de domínio definido em CORS.

Tipo: string

Sim

Access-Control-Request-Method

Indica um método de HTTP que pode ser usado por uma solicitação. A requisição pode usar vários cabeçalhos de método.

Tipo: string

Valores válidos: GET, PUT, HEAD, POST e DELETE.

Sim

Access-Control-Request-Headers

Indica os cabeçalhos de HTTP de uma solicitação. A solicitação pode usar vários cabeçalhos de HTTP.

Tipo: string

Não

Elementos de solicitação

Este pedido não envolve elementos.

Sintaxe da resposta

1
2
3
4
5
6
7
8
9
HTTP/1.1 status_code
Content-Type: type
Access-Control-Allow-Origin: origin
Access-Control-Allow-Methods: method
Access-Control-Allow-Header: header
Access-Control-Max-Age: time
Access-Control-Expose-Headers: header
Date: date
Content-Length: length

Cabeçalhos de resposta

A solicitação usa os cabeçalhos descritos em Tabela 2.

Tabela 2 Cabeçalhos de solicitação CORS

Cabeçalho

Descrição

Access-Control-Allow-Origin

Se a Origin de uma solicitação atender aos requisitos de configuração CORS do servidor, a resposta conterá a Origin.

Tipo: string

Access-Control-Allow-Headers

Se os headers de uma solicitação atenderem aos requisitos de configuração CORS do servidor, a resposta conterá os headers.

Tipo: string

Access-Control-Max-Age

Valor de MaxAgeSeconds na configuração CORS de um servidor.

Tipo: inteiro

Access-Control-Allow-Methods

Se o Access-Control-Request-Method de uma solicitação atender aos requisitos de configuração CORS do servidor, a resposta conterá os Methods nesta rule.

Tipo: string

Os valores possíveis são GET, PUT, HEAD, POST e DELETE.

Access-Control-Expose-Headers

Indica ExposeHeader na configuração CORS de um servidor.

Tipo: string

Elementos de resposta

Esta resposta não envolve elementos.

Respostas de erro

Tabela 3 descreve possíveis erros especiais na solicitação.

Tabela 3 Erro especial

Código de erro

Descrição

Código de status de HTTP

Bad Request

Invalid Access-Control-Request-Method: null

Quando CORS e OPTIONS são configurados para um bucket, nenhum cabeçalho de method é adicionado.

400 BadRequest

Bad Request

Insufficient information. Origin request header needed.

Quando CORS e OPTIONS são configurados para um bucket, nenhum cabeçalho de origin é adicionado.

400 BadRequest

AccessForbidden

CORSResponse: This CORS request is not allowed. This is usually because the evalution of Origin, request method / Access-Control-Request-Method or Access-Control-Requet-Headers are not whitelisted by the resource's CORS spec.

Quando CORS e OPTIONS são configurados para um bucket, Origin, method e Headers não correspondem a nenhuma rule.

403 Forbidden

Para outros erros, veja Tabela 2.

Solicitação de exemplo

1
2
3
4
5
6
7
8
OPTIONS /object_1 HTTP/1.1
User-Agent: curl/7.29.0
Host: examplebucket.obs.region.myhuaweicloud.com
Accept: */*
Date: WED, 01 Jul 2015 04:02:19 GMT
Authorization: OBS H4IPJX0TQTHTHEBQQCEC:bQZG9c2aokAJsHOOkuVBK6cHZZQ=
Origin: www.example.com
Access-Control-Request-Method: PUT

Resposta de exemplo

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
HTTP/1.1 200 OK
Server: OBS
x-obs-request-id: BF26000001643632D12EFCE1C1294555
Access-Control-Allow-Origin: www.example.com
Access-Control-Allow-Methods: POST,GET,HEAD,PUT,DELETE
Access-Control-Max-Age: 100
Access-Control-Expose-Headers: ExposeHeader_1,ExposeHeader_2
Access-Control-Allow-Credentials: true
x-obs-id-2: 32AAAQAAEAABAAAQAAEAABAAAQAAEAABCS+DXV4zZetbTqFehhEcuXywTa/mi3T3
Date: WED, 01 Jul 2015 04:02:19 GMT
Content-Length: 0