Preciso definir o CORS para ser ativado nos scripts servidos pelo express. Como posso definir os cabeçalhos nessas respostas retornadas para público / ativos?
javascript
node.js
express
Dr.Knowitall
fonte
fonte
res
objeto. Quando tento ver esse conteúdo, fico indefinido usandores.headers
;res.write('content')
?res.set
, não funcionou para mim, mas ocors
middleware fez o truque da maneira certa.Isso é tão chato.
Tudo bem se alguém ainda está tendo problemas ou simplesmente não deseja adicionar outra biblioteca. Tudo o que você precisa fazer é colocar essa linha de código de mercadorias intermediárias antes de suas rotas.
fonte
Você pode fazer isso usando cors. cors irá lidar com sua resposta CORS
fonte
Resposta curta:
res.setHeaders
- chama o método Node.js nativores.set
- define cabeçalhosres.headers
- um alias para res.setfonte
Há pelo menos um middleware no npm para manipular o CORS no Express: cors .
fonte
Você também pode adicionar um middleware para adicionar cabeçalhos CORS, algo como isso funcionaria:
fonte
fonte
A resposta do @ klode está certa.
No entanto, você deve definir outro cabeçalho de resposta para torná-lo acessível a outras pessoas.
Exemplo:
Primeiro, você adiciona 'tamanho da página' no cabeçalho da resposta
Então, tudo que você precisa fazer é expor seu cabeçalho
fonte
javascript res.set("...","..."); res.set("...","....");
Agora, como você expõe esses 2 cabeçalhos?javascript Access-Control-Expose-Headers: * // or Access-Control-Expose-Headers: <header-name>, <header-name>, ...