O compartilhamento de recursos entre origens (CORS, na sigla em inglês) é um mecanismo padrão que permite que chamadas XMLHttpRequest (XHR) executadas em uma página da Web interajam com recursos de origens diferentes. Sem o CORS, a política de mesma origem aplicada por todos os navegadores impediria solicitações de origem cruzada. Para mais informações de referência sobre o CORS, consulte a documentação de referência do Mozilla Developer Network (MDN) (em inglês).
O padrão do CORS exige que os clientes da Web emitem um OPTIONS
de CORS para determinar se o servidor da Web solicitado é compatível com CORS. Se um servidor da Web for compatível com solicitação CORS, ele processará a solicitação OPTIONS
com cabeçalhos de resposta CORS adequados.
Processar CORS no aplicativo de back-end
Se o back-end for compatível com o CORS, configure o ESP ou o ESPv2 para transmitir a solicitação de CORS ao back-end. Ative a passagem na especificação da OpenAPI para sua API, conforme mostrado abaixo:
swagger: "2.0" host: "my-cool-api.endpoints.my-project-id.cloud.goog" x-google-endpoints: - name: "my-cool-api.endpoints.my-project-id.cloud.goog" allowCors: True
Processar CORS com ESP ou ESPv2
Caso seu back-end não seja compatível com o CORS, configure o ESP ou o ESPv2 para lidar com solicitações de CORS especificando sinalizações de inicialização do CORS. Nessa abordagem, as solicitações simuladas do CORS não serão transmitidas para o aplicativo de back-end. Além disso, o ESP ou ESPv2 anexará os cabeçalhos CORS configurados às respostas do serviço de back-end quando apropriado.
As seguintes opções de inicialização do CORS estão disponíveis para o ESP e o ESPv2