recursal/MDN huggingface dataset:
401 Unauthorized
================

O código de resposta de status de erro do cliente HTTP **`401 Unauthorized`** indica que a solicitação não foi aplicada porque não possui credenciais de autenticação válidas para o recurso de destino.

Esse status é enviado com um cabeçalho `WWW-Authenticate` que contém informações sobre como autorizar corretamente.

Esse status é semelhante a `403`, mas neste caso, a autenticação é possível.

Status
------
```

401 Unauthorized
```

Exemplo de resposta
-------------------
```

HTTP/1.1 401 Não autorizado
Date: Wed, 21 Oct 2015 07:28:00 GMT
WWW-Authenticate: Basic realm="Acesso intermediário ao site"
```

Especificações
--------------

| Especificação | Título |
| --- | --- |
| RFC 7235, sessão 3.1: 401 Não autorizado | HTTP/1.1: Autenticação |

Compatibilidade com navegadores
-------------------------------

BCD tables only load in the browser with JavaScript enabled. Enable JavaScript to view data.

Veja também
-----------

* HTTP authentication
* `WWW-Authenticate`
* `Authorization`
* `Proxy-Authorization`
* `Proxy-Authenticate`
* `403`, `407`
415 Unsupported Media Type
==========================

O erro HTTP **`415 Unsupported Media Type`** do cliente indica que o servidor se recusou a aceitar a requisição porque o formato do payload não é um formato suportado.

O problema do formato por ter ocorrido pelos valores indicados no `Content-Type` ou `Content-Encoding`, ou pelo resultado da inspeção do dado em si.

Status
------
```

415 Unsupported Media Type
```

Especificações
--------------

| Especificações | Título |
| --- | --- |
| RFC 7231, sessão 6.5.13: 415 Unsupported Media Type | Hypertext Transfer Protocol (HTTP/1.1): Semantics and Content |

Veja também
-----------

* `Content-Type`
* `Content-Encoding`
* `Accept`
409 Conflict
============

O status de resposta **`409 Conflict`** indica que a solicitação atual conflitou com o recurso que está no servidor.

Conflitos são mais frequentes quando usado o método `PUT`. Por exemplo, você pode receber uma resposta 409 quando fizer upload de um arquivo que é mais antigo do que já existe no servidor, resultando em conflito de versão.

Status
------
```

409 Conflito
```

Especificações
--------------

| Especificação | Título |
| --- | --- |
| RFC 7231, sessão 6.5.8: 409 Conflict | Protocolo de Transferência de Hypertexto (HTTP/1.1): Semântica e Conteúdo |

Veja também
-----------

* `PUT`
411 Length Required
===================

O código de resposta **`411 Length Required`** de erro de cliente do Protocolo de Transferência de HyperTexto (HTTP) indica que o servidor se nega a aceitar a requisição sem um cabeçalho `Content-Length` definido.

> 
> \*\*Nota:\*\*pela especificação, quando envia dados em uma série de blocos, o cabeçalho `Content-Length` é omitido e no início de cada bloco você precisa adicionar o tamanho do bloco corrente no formato hexadecimal. Veja `Transfer-Encoding` para mais detalhes.
> 
> 
> 

Status
------
```

411 Length Required
```

Specifications
--------------

| Specification | Title |
| --- | --- |
| RFC 7231, sessão 6.5.10: 411 Length Required | Protocolo de transferência de Hipertexto (HTTP/1.1): Semântica e Conteúdo |

See also
--------

* `Content-Length`
* `Transfer-Encoding`
103 Early Hints
===============

O código de informação de status de resposta HTTP **`103 Early Hints`** é destinado principalmente a ser usado com o cabeçalho `Link` para permitir ao agente do usuário começar pré-carregamento de recursos enquanto o servidor ainda está preparando uma resposta.

Sintaxe
-------
```

103 Early Hints
```

Especificações
--------------

| Especificação | Status | Comentários |
| --- | --- | --- |
| RFC 8297: 103 Early Hints | IETF RFC | Definição inicial |

Comptabilidade de navegador
---------------------------

BCD tables only load in the browser with JavaScript enabled. Enable JavaScript to view data.

Veja também
-----------

* `Link`
414 URI Too Long
================

O código de resposta **`414 URI Too Long`** indica que o tamanho da URI requisitada pelo cliente é maior do que o tamanho que o servidor aceita interpretar.

Existem algumas raras condições em que isso pode ocorrer:

* quando um cliente converteu de forma imprópria uma requisição `POST` para uma requisição `GET` com uma sequência de informações muito grande,
* quando o cliente caiu em um loop de redirecionamentos (por exemplo, um redirecionamento de uma URI prefixada que aponta para um sufixo de si mesmo),
* ou quando o servidor está sob ataque por um cliente tentando explorar potenciais falhas de segurança.
Status
------
```

414 URI Too Long
```

Especificações
--------------

| Especificação | Título |
| --- | --- |
| RFC 7231, sessão 6.5.12: 414 URI Too Long | Hypertext Transfer Protocol (HTTP/1.1): Semantics and Content |

Veja também
-----------

* URI
425 Too Early
=============

**Experimental:** **Esta é uma tecnologia experimental (en-US)**  
Verifique a tabela de compatibilidade entre Navegadores cuidadosamente antes de usar essa funcionalidade em produção.

O status HTTP **`425 Too Early`** indica que o servidor não quer correr o risco de processar uma requisição que pode ser repetida, o que cria um potencial risco para ataques de repetição.

Status
------
```

425 Too Early
```

Especificações
--------------

| Especificação | Título |
| --- | --- |
| RFC 8470, sessão 5.2: 425: Early Data | Using Early Data in HTTP |

Compatibilidade com navegadores
-------------------------------

BCD tables only load in the browser with JavaScript enabled. Enable JavaScript to view data.
408 Request Timeout
===================

`A resposta 408 Request Timeout` significa que o servidor irá encerrar essa conexão em desuso. É enviado a uma conexão parada por alguns servidores, *mesmo sem nenhuma requisição feita anteriormente pelo cliente*.

O servidor deve enviar no cabeçalho de resposta "close" `Connection` já que `408` implica que o servidor decidiu encerrar a conexão ao invés de continuar aguardando.

Essa resposta está sendo mais usada desde que alguns browsers como Chrome, Firefox 27+, e IE9, usam o mecanismo "HTTP pre-connection" para acelerar a navegação.

> 
> \*\*Nota:\*\*alguns servidores simplesmente encerram a conexão sem enviar esssa mensagem.
> 
> 
> 

Status
------
```

408 Request Timeout
```

Especificações
--------------

| Especificação | Título |
| --- | --- |
| RFC 7231, sessão 6.5.7: 408 Request Timeout | Hypertext Transfer Protocol (HTTP/1.1): Semantics and Content |

Veja Também
-----------

* `Connection`
* `X-DNS-Prefetch-Control`
410 Gone
========

O código de resposta HTTP **`410 Gone`** de erro do cliente indica que o acesso ao recurso não está mais disponível no servidor de origem, e que esta condição tende a ser permanente.

Se você não sabe se a ausência do recurso é temporária ou permanente, o código de status `404` deverá ser utilizado.

> 
> \*\*Nota:\*\*Uma resposta 410 response é armazenada em cache por default.
> 
> 
> 

Status
------
```

410 Gone
```

Especificações
--------------

| Especificação | Título |
| --- | --- |
| RFC 7231, sessão 6.5.9: 410 Gone | Hypertext Transfer Protocol (HTTP/1.1): Semantics and Content |

Compatibilidade com navegadores
-------------------------------

BCD tables only load in the browser with JavaScript enabled. Enable JavaScript to view data.

A informação mostrada abaixo está sendo servida do MDN's GitHub (https://github.com/mdn/browser-compat-data).

Veja também
-----------

* `404`
205 Reset Content
=================

O código de estado HTTP **`205 Reset Content`** informa ao cliente para reconfigurar a visualização do documento, para, por exemplo, limpar o conteúdo de um formulário, redefinir um estado da tela ou atualizar a interface do usuário.

Status
------
```

205 Reset Content
```

Specifications
--------------

| Specification | Title |
| --- | --- |
| RFC 7231, sessão 6.3.6: 205 Reset Content | Hypertext Transfer Protocol (HTTP/1.1): Semantics and Content |

Compatibility Notes
-------------------

* O comportamento do Browser é diferente se a resposta de forma errada incluir um Body nas conexões persistentes, veja 204 No Content para mais detalhes.
See also
--------

* `204` No Content
502 Bad Gateway
===============

O código de erro HTTP **`502 Bad Gateway`** retornado pelo servidor indica que ele, enquanto atuando como um servidor intermediário (*gateway* ou *proxy*), recebeu uma resposta inválida do servidor para o qual a requisição foi encaminhada (*upstream server*).

**Nota:** Um *Gateway* pode se referir a coisas diferentes na rede e um erro 502 geralmente não é algo que você possa corrigir, mas requer uma correção por parte do servidor web ou dos proxies através dos quais você está tentando obter acesso.

Status
------
```

502 Bad Gateway
```

Especificações
--------------

| Especificação | Título |
| --- | --- |
| RFC 7231, sessão 6.6.3: 502 Bad Gateway | Hypertext Transfer Protocol (HTTP/1.1): Semantics and Content |

Compatibilidade com navegadores
-------------------------------

BCD tables only load in the browser with JavaScript enabled. Enable JavaScript to view data.

As informações mostradas acima foram extraídas do GitHub do MDN (https://github.com/mdn/browser-compat-data).

Veja também
-----------

* `504`
404 Not Found
=============

A resposta de erro **`404 Not Found`** indica que o servidor não conseguiu encontrar o recurso solicitado. Normalmente, links que levam para uma página 404 estão quebrados ou desativados e podem estar sujeitos a link rot.

Um código 404 não indica se o recurso está indisponível temporariamente ou se o recurso foi permanentemente removido. Mas, se esse for o caso, o ideal é utilizar o código `410` (Gone).

Status
------
```

404 Not Found
```

Páginas de erro personalizadas
------------------------------

Vários sites customizam o design de uma página 404 para facilitar a usabilidade e ajudá-lo em o que fazer em seguida. Servidores apache podem ser configurados usando um arquivo `.htaccess` e um pequeno código como o seguinte.


```bash
ErrorDocument 404 /notfound.html
```


Para um exemplo de uma página 404 personalizada, veja MDN's 404 page.

**Nota:** Usar um design personalizado é uma boa ideia, se usado em moderação. Sinta-se livre para fazer a sua página 404 divertida, mas tome cuidado para não confundir seus usuários.

Especificações
--------------

| Especificação | Título |
| --- | --- |
| RFC 7231, sessão 6.5.4: 404 Not Found | Hypertext Transfer Protocol (HTTP/1.1): Semantics and Content |

Compatibilidade com navegadores
-------------------------------

BCD tables only load in the browser with JavaScript enabled. Enable JavaScript to view data.

Veja também
-----------

* `410`
* Wikipedia: HTTP 404
303 See Other
=============

O código de resposta de status de redirecionamento do HyperText Transfer Protocol (HTTP) **`303 See Other`** indica que o direcionamento não une a um recurso carregado novo, mas a outra página, com uma página de confirmação ou de progresso de carregamento. Este código de resposta normalmente é retornado como resultado de um `PUT` ou `POST`. O método usado para mostrar esta página redirecionada é sempre `GET`.

Status
------
```

303 See Other
```

Especificações
--------------

| Especificação | Título |
| --- | --- |
| RFC 7231, sessão 6.4.4: 303 See Other | Hypertext Transfer Protocol (HTTP/1.1): Semantics and Content |

Compatibilidade com navegadores
-------------------------------

BCD tables only load in the browser with JavaScript enabled. Enable JavaScript to view data.

A informação mostrada abaixo foi retirada do Github da MDN (https://github.com/mdn/browser-compat-data).

Veja também
-----------

* `302` `Found`, the temporary redirect
506 Variant Also Negotiates
===========================

O código de status de resposta HTTP **`506 Variant Also Negotiates`** pode ser dado no contexto de Negociação de Conteúdo Transparente (Transparent Content Negotiation) (veja RFC 2295). Esse protocolo permite ao cliente requerer a melhor variante de um dado recurso, onde um servidor fornece múltiplos variantes.

O código de status **`Variant Also Negotiates`** indica um erro na configuração interna do servidor na qual a variante escolhida é em si configurada para entrar em uma negociação de conteúdo, então não é um *endpoint* de negociação apropriado.

Status
------
```

506 Variant Also Negotiates
```

Especificações
--------------

| Especificação | Título |
| --- | --- |
| RFC 2295, sessão 8.1: 506 Variant Also Negotiates | Transparent Content Negotiation in HTTP |
429 Too Many Requests
=====================

O código de resposta HTTP **`429 Too Many Requests`** indica que o usuário enviou muitos pedidos em um determinado período de tempo.

Um header `Retry-After` pode ser incluído na resposta indicando quanto tempo o usuário deve esperar antes de fazer um novo pedido.

Status
------
```

429 Too Many Requests
```

Exemplo
-------
```

HTTP/1.1 429 Too Many Requests
Content-Type: text/html
Retry-After: 3600
```

Especificações
--------------

| Especificações | Título |
| --- | --- |
| RFC 6585, sessão 4: 429 Too Many Requests | Status HTTP adicionais |

Veja também
-----------

* `Retry-After`
201 Created
===========

O status HTTP "**201 Created**" é utilizado como resposta de sucesso, indica que a requisição foi bem sucedida e que um novo recurso foi criado. Este novo recurso é efetivamente criado antes do retorno da resposta e o novo recurso é enviado no corpo da mensagem (pode vir na URL ou na header `Location`).

Comumente, este status é utilizado em requisições do tipo `POST`.

Status
------
```

201 Created
```

Especificações
--------------

| Especificação | Título |
| --- | --- |
| RFC 7231, sessão 6.3.2: 201 Created | Hypertext Transfer Protocol (HTTP/1.1): Semantics and Content |

Compatibilidade com navegadores
-------------------------------

BCD tables only load in the browser with JavaScript enabled. Enable JavaScript to view data.

Veja mais
---------

* HTTP request methods
418 I'm a teapot
================

O código de erro HTTP para o cliente **`418 I'm a teapot`** indica que o servidor se recusa a preparar café por ser um bule de chá. Este erro é uma referência ao *Hyper Text Coffee Pot Control Protocol*, que foi uma piada de 1º de abril de 1998.

Status
------
```

418 I'm a teapot
```

Especificações
--------------

| Especificação | Título |
| --- | --- |
| RFC 2324, sessão 2.3.2: 418 I'm a teapot | Hyper Text Coffee Pot Control Protocol (HTCPCP/1.0): Semantics and Content |

Compatibilidade com navegadores
-------------------------------

BCD tables only load in the browser with JavaScript enabled. Enable JavaScript to view data.

Veja também
-----------

* Wikipedia: Hyper Text Coffee Pot Control Protocol
307 Redirecionamento temporário
===============================

HTTP O código de estado **`307 Redirecionamento temporário`** indica que o recurso da requisição foi temporariamente alterado para a URL informada no cabeçalho `Location`.

O método e o corpo da requisição original são reutilizados para realizar a requisição de redirecionamento. Em casos onde você deseja que o método utilizado seja alterado para `GET`, utilize o código de estado `303 See Other`. Isto é util quando você deseja dar uma resposta a um método `PUT` que não seja o recurso enviado, mas uma mensagem de confirmação (como por exemplo "Envio de XYZ concluído com sucesso").

A única diferença entre `307` e `302` é que o `307` garante que o método e o corpo não são alterados quando o redirecionamento é feito. Com o `302`, alguns clientes antigos alteram o método para `GET`: o comportamento com métodos não-`GET` e `302` fica assim imprevisível na Web, enquanto o comportamento com `307` é previsível. Para requisições `GET`, seu comportamento é identico.

Status
------
```

307 Redirecionamento temporário
```

Especificações
--------------

| Especificação | Título |
| --- | --- |
| RFC 7231, sessão 6.4.7: 307 Temporary Redirect | Hypertext Transfer Protocol (HTTP/1.1): Semantics and Content |

Compatibilidade com navegadores
-------------------------------

BCD tables only load in the browser with JavaScript enabled. Enable JavaScript to view data.

Veja também
-----------

* `302 Found`, o equivalente a este código de estado, que pode mudar o método utilizado quiando não é um `GET`.
* `303 See Other`, um redirecionamento temporário que altera o método utilizado para `GET`.
* `301 Moved Permanently`, um redirecionamento permanente.
431 Request Header Fields Too Large
===================================

O código de stauts de resposta HTTP **`431 Request Header Fields Too Large`** indica que o servidor se recusou a processar a requisição por que os cabeçalhos HTTP da mesma são muito grandes. A requisição *pode* ser resubmetida depois de o tamanho dos cabeçalhos serem reduzidos.

**`431`** pode ser usado quando o **tamanho total** dos cabeçalhos da requisição são muito grandes, ou quando um **único** cabeçalho da requisição é muito grande. Para ajudar aqueles que estão encontrando esse erro, indicar quais dos dois é o problema através do corpo da resposta - idealmente inclua quais são os cabeçalhos que são muito grandes. Isso permite aos usuários a possibilidade de poder arrumar o problema, como limpando os *cookies* deles.

Servidores vão produzir esse status frequentemente se:

* O cabeçalho `Referer` URL é muito longo;
* Existem muitos Cookies sendo enviados na requisição
Status
------
```

431 Request Header Fields Too Large
```

Especificações
--------------

| Especificação | Título |
| --- | --- |
| RFC 6585, sessão 5: 431 Request Header Fields Too Large | Additional HTTP Status Codes |

Veja também
-----------

* `414 URI Too Long`
* Request header
400 Bad Request
===============

O código de status de resposta HTTP **`400 Bad Request`** indica que o servidor não pode ou não irá processar a requisição devido a alguma coisa que foi entendida como um erro do cliente (por exemplo, sintaxe de requisição mal formada, enquadramento de mensagem de requisição inválida ou requisição de roteamento enganosa).

**Aviso:** O cliente não deve repetir essa requisição sem modificá-la.

Status
------
```

400 Bad Request
```

Especificações
--------------

| Especificação | Título |
| --- | --- |
| RFC 7231, sessão 6.5.1: 400 Bad Request | Hypertext Transfer Protocol (HTTP/1.1): Semânticas e conteúdo |

Veja também
-----------

* 400 Bad Request
Reason: Credential is not supported if the CORS header ‘Access-Control-Allow-Origin’ is ‘\*’
============================================================================================

Motivo
------
```

Reason: Credential is not supported if the CORS header ‘Access-Control-Allow-Origin’ is ‘*’
```

O que houve de errado?
----------------------

A requisição CORS foi realizada com a flag de credenciais definida, mas o servidor está configurado para usar o coringa (`"*"`) como valor do cabeçalho `Access-Control-Allow-Origin`, o que não permite o uso de credenciais.

Para corrigir o problema do lado do cliente, assegure que a flag de credenciais é `false` ao fazer a requisição CORS.

* Se a requisição foi realizada usando `XMLHttpRequest`, assegure-se que você não setou `withCredentials` (en-US) para `true`.
* Usando Server-sent events (en-US), verifique se `EventSource.withCredentials` (en-US) está `false` (é o valor padrão).
* Se usar a Fetch API, assegure-se que `Request.credentials` (en-US) está como `"omit"`.

Se, em vez disso, você precisar ajustar o comportamento do servidor, você deverá alterar o valor de `Access-Control-Allow-Origin` para permitir acesso para a origem do qual o cliente é carregado.

Veja também
-----------

* CORS errors (en-US)
* Glossary: CORS
* CORS introduction
Reason: CORS header 'Access-Control-Allow-Origin' missing
=========================================================

Motivo
------
```

Reason: CORS header 'Access-Control-Allow-Origin' missing
```

O que houve de errado?
----------------------

A resposta à requisição CORS está sem o cabeçalho `Access-Control-Allow-Origin` necessário, que é usado para determinar se o recurso pode ser acessado ou não pelo conteúdo operando dentro da origem atual.

Se o servidor estiver sob seu controle, adicione a origem do site solicitante ao conjunto de domínios de acesso permitido, adicionando-o ao valor do cabeçalho `Access-Control-Allow-Origin`.

Por exemplo, para permitir que um site da origem `https://amazing.site` acesse ao recurso usando CORS, o cabeçalho deve conter:
```

Access-Control-Allow-Origin: https://amazing.site
```


Você também pode configurar um site para permitir que qualquer site o acesse usando o curinga `"*"`. Você só deve usar isso para APIs públicas. As APIs privadas nunca devem usar `"*"` e devem ter um domínio ou domínios específicos definidos. Além disso, o curinga só funciona para solicitações feitas com o atributo `crossorigin` definido como `"anonymous"`.
```

Access-Control-Allow-Origin: *
```


**Aviso:** **Advertência:** Usar o caractere curinga para permitir que todos os sites acessem uma API privada é uma péssima ideia para o que deve ser uma razão óbvia.

Por exemplo, no Apache, adicione uma linha como a seguinte à configuração do servidor (na seção `<Directory>`, `<Location>`, `<Files>` ou `<VirtualHost>` apropriada). A configuração é tipicamente encontrada em um arquivo `.conf` (`httpd.conf` e `apache.conf` são nomes comuns para estes), ou em um arquivo `.htaccess`.
```

Header set Access-Control-Allow-Origin 'origin-list'
```


No Nginx, O comando para configurar este cabeçalho é:
```

add_header 'Access-Control-Allow-Origin' 'origin-list'
```

Veja também
-----------

* CORS errors (Erros do CORS) (en-US)
* Glossário: CORS
* CORS introduction (Introdução ao CORS)
Razão: A requisição CORS não foi bem sucedida
=============================================

Razão
-----
```

Razão: A requisição CORS não foi bem sucedida
```

O que deu errado?
-----------------

A requisição HTTP que faz uso do CORS falhou porque a conexão HTTP falhou a nível da camada de transporte ou protocolo. O erro não é diretamente relacionado ao CORS, mas é um tipo de erro fundamental de rede.

Em alguns casos, isso é causado por um plug-in do navegador (um bloqueador de anúncios ou protetor de privacidade) bloqueando a solicitação.

Outras possíveis causas incluem:

* Tentar acessar um recurso https que possui um certificado inválido causará esse erro.
* Tentar acessar um recurso http de uma página com origem https também causará esse erro.
* No Firefox 68, as páginas https não têm permissão para acessar http: // localhost, embora isso possa ser alterado pelo Bug 1488740.
* O servidor não respondeu à solicitação atual (mesmo que tenha respondido ao Preflight request). Um cenário pode ser um serviço HTTP em desenvolvimento que entre em pânico sem retornar nenhum dado.
Veja também
-----------

* Erros de CORS (en-US)
* Glossary: CORS
* Introdução ao CORS
Reason: CORS request not HTTP
=============================

Razão
-----
```

Razão: Requisição CORS não é HTTP
```

O que deu errado?
-----------------

Requisições CORS devem apenas usar o esquema de URL HTTPS, mas a URL especificada pela requisição é de um tipo diferente. Isso geralmente ocorre se a URL especifica um arquivo local, usando uma URL `file:///`.

Para consertar esse problema, apenas certifique-se que você está usando URLs HTTPS quando emitir requisições que envolvam CORS.

### Segurança de Arquivos Locais no Firefox 68

Quando um usuário abria uma página usando uma URI `file:///` no Firefox 67 ou anterior, a origem da página era definida como sendo o diretório do qual a página era aberta. Recursos existentes no mesmo diretório e nos subdiretórios eram tratados como tendo a mesma origem de acordo com a regra de mesma-origem do CORS.

Em resposta ao CVE-2019-11730, o Firefox, a partir da versão 68, define a origem da página aberta pela URI `file:///` como única. Desta maneira, outros recursos do mesmo diretório ou subdiretório não satisfazem mais à regra de mesma-origem do CORS. Este novo comportamento está habilitado por padrão pela preferência de nome `privacy.file_unique_origin`.

Veja também
-----------

* CORS errors (en-US)
* Glossário: CORS
* CORS introduction
* What is a URL? (en-US)