"Se um trabalhador quiser fazer bem o seu trabalho, ele deve primeiro afiar suas ferramentas." - Confúcio, "Os Analectos de Confúcio. Lu Linggong"
Primeira página > Programação > Como corrigir o erro "O campo de cabeçalho da solicitação Access-Control-Allow-Headers não é permitido por Access-Control-Allow-Headers" em solicitações de origem cruzada?

Como corrigir o erro "O campo de cabeçalho da solicitação Access-Control-Allow-Headers não é permitido por Access-Control-Allow-Headers" em solicitações de origem cruzada?

Publicado em 2024-11-03
Navegar:417

How to Fix the \

Resolvendo o erro "O campo do cabeçalho da solicitação Access-Control-Allow-Headers não é permitido pelo erro Access-Control-Allow-Headers"

In na tentativa de corrigir o erro inicial, cabeçalhos foram adicionados à solicitação para permitir vários métodos e cabeçalhos. No entanto, isso levou a um novo erro: "O campo de cabeçalho de solicitação Access-Control-Allow-Origin não é permitido por Access-Control-Allow-Headers."

O problema decorre do fato de que os navegadores enviam uma solicitação OPTIONS de comprovação para solicitações de origem cruzada com determinados tipos de conteúdo. Por padrão, o Angular envia dados com um tipo de conteúdo application/json, que aciona essa solicitação de comprovação.

Resposta e cabeçalhos do servidor

O servidor deve permitir explicitamente o acesso- Control-Allow-Headers em sua resposta para evitar o erro. Caso contrário, o navegador interpretará a resposta como não permitindo nenhum cabeçalho.

Solução: modificando o tipo de conteúdo ou a resposta do servidor

Para resolver o problema, modifique o cliente ou configuração do servidor:

1. Lado do cliente (Angular):

Substitua o tipo de conteúdo Angular padrão para application/x-www-form-urlencoded, que não aciona uma solicitação de comprovação:$http. postagem(url, dados, { cabeçalhos: { 'Tipo de conteúdo': 'application/x-www-form-urlencoded; conjunto de caracteres=UTF-8' } });

2. Lado do servidor:
$http.post(url, data, {
    headers : {
        'Content-Type' : 'application/x-www-form-urlencoded; charset=UTF-8'
    }
});

Como alternativa, permita o cabeçalho Access-Control-Allow-Headers no servidor. Os seguintes cabeçalhos de resposta devem ser definidos:

Access-Control-Allow-Origin: * ou a origem específica (por exemplo, https://example.com)

Access-Control -Allow-Methods: GET, POST, PUT, DELETE, OPTIONS
  • Access-Control-Allow-Headers: Todos os cabeçalhos que o cliente envia na solicitação (por exemplo, Content-Type, Authorization)
Tutorial mais recente Mais>

Isenção de responsabilidade: Todos os recursos fornecidos são parcialmente provenientes da Internet. Se houver qualquer violação de seus direitos autorais ou outros direitos e interesses, explique os motivos detalhados e forneça prova de direitos autorais ou direitos e interesses e envie-a para o e-mail: [email protected]. Nós cuidaremos disso para você o mais rápido possível.

Copyright© 2022 湘ICP备2022001581号-3