@@ -6,30 +6,10 @@ const { PrismaClient } = pkg;
6
6
const prisma = new PrismaClient ( ) ;
7
7
const app = express ( ) ;
8
8
9
- const allowedOrigins = [ 'https://guilhermez2006.github.io' ] ;
10
-
11
- // Configuração completa do CORS para aceitar preflight e liberar o front
12
- app . use ( cors ( {
13
- origin : function ( origin , callback ) {
14
- // Permitir requests sem origin (ex: Postman, curl)
15
- if ( ! origin ) return callback ( null , true ) ;
16
- if ( allowedOrigins . indexOf ( origin ) === - 1 ) {
17
- return callback ( new Error ( 'CORS negado para origem: ' + origin ) , false ) ;
18
- }
19
- return callback ( null , true ) ;
20
- } ,
21
- methods : [ 'GET' , 'POST' , 'DELETE' , 'OPTIONS' ] ,
22
- allowedHeaders : [ 'Content-Type' , 'Authorization' ]
23
- } ) ) ;
24
-
25
- // Middleware para responder requests OPTIONS (preflight)
26
- app . options ( '*' , cors ( ) ) ;
27
-
9
+ app . use ( cors ( ) ) ;
28
10
app . use ( express . json ( ) ) ;
29
11
30
- // Rotas
31
-
32
- // Criar usuário
12
+ // Criar usuário (POST)
33
13
app . post ( '/usuarios' , async ( req , res ) => {
34
14
try {
35
15
const user = await prisma . user . create ( {
@@ -41,14 +21,15 @@ app.post('/usuarios', async (req, res) => {
41
21
} ) ;
42
22
res . status ( 201 ) . json ( user ) ;
43
23
} catch ( error ) {
24
+ // Prisma retorna esse código para duplicidade de campo único
44
25
if ( error . code === 'P2002' ) {
45
26
return res . status ( 409 ) . json ( { error : 'Usuário já cadastrado!' } ) ;
46
27
}
47
28
res . status ( 500 ) . json ( { error : 'Erro ao cadastrar usuário.' } ) ;
48
29
}
49
30
} ) ;
50
31
51
- // Listar usuários
32
+ // Listar todos os usuários (GET)
52
33
app . get ( '/usuarios' , async ( req , res ) => {
53
34
let users ;
54
35
if ( req . query . name ) {
@@ -61,20 +42,18 @@ app.get('/usuarios', async (req, res) => {
61
42
res . status ( 200 ) . json ( users ) ;
62
43
} ) ;
63
44
64
- // Deletar usuário
45
+ // Deletar usuário (DELETE)
65
46
app . delete ( '/usuarios/:id' , async ( req , res ) => {
66
47
try {
67
48
await prisma . user . delete ( {
68
- where : { id : Number ( req . params . id ) }
49
+ where : { id : req . params . id }
69
50
} ) ;
70
51
res . status ( 200 ) . json ( { message : 'Usuário deletado com sucesso!' } ) ;
71
52
} catch ( error ) {
72
53
res . status ( 500 ) . json ( { error : 'Erro ao deletar usuário.' } ) ;
73
54
}
74
55
} ) ;
75
56
76
- const PORT = process . env . PORT || 3000 ;
77
-
78
- app . listen ( PORT , ( ) => {
79
- console . log ( `Servidor rodando na porta ${ PORT } ` ) ;
80
- } ) ;
57
+ app . listen ( 3000 , ( ) => {
58
+ console . log ( 'Servidor rodando na porta 3000' ) ;
59
+ } ) ;
0 commit comments