Postagens

Mostrando postagens com o rótulo JavaScript

Erros de CORS no API Gateway: Como Configurar e o Que Seu Lambda Precisa Retornar

Você abre o console do navegador e vê aquele erro clássico: 'Access to fetch at ... has been blocked by CORS policy' . O backend responde 200 no Postman, mas o frontend quebra. Esse é um dos erros mais comuns ao integrar um frontend com API Gateway — e a causa quase sempre está em dois lugares ao mesmo tempo: a configuração do API Gateway E os headers que o Lambda retorna. TL;DR — Resumo Rápido Camada O que precisa estar correto API Gateway (REST) Habilitar CORS no recurso, criar método OPTIONS com resposta 200, configurar headers de resposta no método API Gateway (HTTP) Configurar CORS diretamente nas configurações da API Lambda (ambos) Retornar Access-Control-Allow-Origin e outros headers CORS em TODA resposta, incluindo erros Erro mais comum Configurar o API Gateway mas esquecer os headers no Lambda — o preflight passa, a requisição real falha Como o CORS Funciona no Contexto do API Gate...

Criando uma Presigned URL no S3: Acesso Temporário a Arquivos Privados

Você tem um arquivo privado no S3 e precisa dar acesso temporário a um usuário sem expor suas credenciais AWS nem tornar o bucket público — esse é exatamente o cenário para o qual as Presigned URLs foram criadas. Com uma URL assinada, você delega acesso a um objeto específico por um período determinado, sem alterar as permissões do bucket. TL;DR — Resumo Rápido Ponto Detalhe O que é URL temporária que carrega credenciais assinadas na própria query string Expiração padrão usada aqui 3600 segundos (1 hora) Quem assina A identidade IAM que gera a URL (usuário, role ou instância) Bucket precisa ser público? Não — o objeto pode permanecer completamente privado SDK usado AWS SDK for Python (Boto3) e AWS SDK for JavaScript v3 Alternativa via CLI aws s3 presign Como a Presigned URL do S3 Funciona Uma Presigned URL não é um token separado — ela é a própria requisição HTTP pré-assinada. O SDK pega ...