Computação 100% no Cliente • Zero Logs de Servidor • Execução Instantânea
Curious TechieCaixa de Ferramentas
Web SecurityW3C Recommendation / Fetch StandardVerified Terminology

Compartilhamento de Recursos de Origem Cruzada (CORS)

Resposta Direta

Mecanismo HTTP baseado em cabeçalhos que autoriza servidores a permitirem acessos de leitura vindos de origens externas no navegador.

Entity Relationships (GEO Conceptual Hierarchy)

Taxonomy Model
Relational Knowledge Graph Sequence
CORS→
Same-Origin Policy→
Access-Control-Allow-Origin→
preflight OPTIONS→
credenciais
CORS
•>Same-Origin Policy
•>Access-Control-Allow-Origin
•>preflight OPTIONS
•>credenciais

Technical Explanation & Operational Mechanics

O CORS flexibiliza a SOP de maneira estrita. Usando cabeçalhos como Access-Control-Allow-Origin, o navegador autoriza o JavaScript a ler retornos de APIs em domínios distintos. Requisições com métodos complexos disparam uma validação prévia OPTIONS (preflight).

Technical Example & Practical Implementation

Troca de Cabeçalhos CORS em Requisição Preflight

Validação de permissões antes da execução de operações com efeitos colaterais.

// 1. Browser sends automatic preflight check:
OPTIONS /api/v1/profile HTTP/1.1
Host: api.example.com
Origin: https://app.client.com
Access-Control-Request-Method: POST
Access-Control-Request-Headers: Authorization, Content-Type

// 2. Server grants cross-origin permission:
HTTP/1.1 204 No Content
Access-Control-Allow-Origin: https://app.client.com
Access-Control-Allow-Methods: GET, POST, OPTIONS
Access-Control-Allow-Headers: Authorization, Content-Type
Access-Control-Max-Age: 86400

// 3. Browser executes the actual POST request:
POST /api/v1/profile HTTP/1.1
Host: api.example.com
Origin: https://app.client.com
Content-Type: application/json