Commit Graph

20 Commits

Author SHA1 Message Date
Maxime Delporte
599ab6b3c6 Prevent client to send more than one JSON's object. Prevent client to send unknown fields. Prevent client to send more than 1MB of data per endpoint, preventing DDOS attacks. 2025-10-27 19:45:37 +01:00
Maxime Delporte
c3fdb40ae4 Adding more context for invalidUnmarshalError management inside readJSON function. Updating 'Panicking vs returning errors' section.
All checks were successful
Deploy Greenlight API / deploy (push) Successful in 54s
2025-10-25 09:57:41 +02:00
Maxime Delporte
906bd868f9 Creating badRequestResponse helper method inside errors.go and use in in the createMovieHandler.
All checks were successful
Deploy Greenlight API / deploy (push) Successful in 53s
2025-10-24 18:55:05 +02:00
Maxime Delporte
12e1c7a523 Updating createMovieHandler using helper's readJSON method.
All checks were successful
Deploy Greenlight API / deploy (push) Successful in 52s
2025-10-24 14:47:20 +02:00
Maxime Delporte
c6baa807e4 Creating readJSON method to manage errors that can happen once.
All checks were successful
Deploy Greenlight API / deploy (push) Successful in 54s
2025-10-24 14:27:46 +02:00
Maxime Delporte
d650691b08 Updating createMovieHandler decoding received data from client.
All checks were successful
Deploy Greenlight API / deploy (push) Successful in 58s
2025-10-24 14:02:36 +02:00
Maxime Delporte
7057f89038 Creating recoverPanic method inside our middleware.go file and use it inside routes.go wrapping our router.
All checks were successful
Deploy Greenlight API / deploy (push) Successful in 59s
2025-10-23 14:19:53 +02:00
Maxime Delporte
2124f2f882 Using the new error's helper methods inside our current API endpoint and with our httprouter Handlers NotFound and MethodNotAllowed (will override the default responses with our helper's methods)
All checks were successful
Deploy Greenlight API / deploy (push) Successful in 52s
2025-10-21 19:02:42 +02:00
Maxime Delporte
0f7515e198 Removing string json's parameter from Runtime variable inside Movie's struct. Creating errors.go handling different json's error for our API.
All checks were successful
Deploy Greenlight API / deploy (push) Successful in 54s
2025-10-21 18:55:45 +02:00
Maxime Delporte
5ca50c6566 Fixing typo. 2025-10-19 18:08:58 +02:00
Maxime Delporte
1927c64047 Creating an envelope struct type inside our helpers file to update our writeJSON data type method's parameter. Updating healthcheckHandler and showMovieHandler with this new type to update our responses. 2025-10-19 11:47:25 +02:00
Maxime Delporte
d7ccef3713 Updating writeJSON helper method replacing json.Marshal() by json.MarshalIndent() method to improve responses readability. Updating README adding Performance sub-section. 2025-10-19 11:34:42 +02:00
Maxime Delporte
9a0cb4db10 Creating Movie struct inside internal/data/movies.go to be used in cmd/api/movies.go. Updating the showMovieHandler with the Movie struct. 2025-10-19 11:03:04 +02:00
Maxime Delporte
cb3691ce04 Creating writeJSON method inside helpers.go file. Using writeJSON helper inside healthcheckHandler. 2025-10-11 21:15:50 +02:00
Maxime Delporte
0db52ad9de Updating healthcheckHandler using json.Marshal method instead of raw json string. 2025-10-11 11:31:58 +02:00
Maxime Delporte
4f531c6fe0 Updating healthcheckHandler with JSON response. 2025-10-11 11:22:59 +02:00
Maxime Delporte
5b6f33c3f0 Creating helpers.go file : allowing us to extract readIDParam method for further use. Updating showMovieHandler with the new method. 2025-10-10 20:50:32 +02:00
Maxime Delporte
faa27b11d5 Fixing typo. 2025-10-10 20:43:14 +02:00
Maxime Delporte
e0931223e4 Adding httprouter dependency to manage endpoints. Adding our routes to routes.go file facilitating endpoints management and adding POST /v1/movies and GET /v1/movies/:id endpoints. Updating main.go file removing ServeMux and add httprouter instead in app structure. Creating movies.go file to manage create and show movie endpoint. 2025-10-10 16:15:30 +02:00
Maxime Delporte
4047888eb0 Creating Makefile. Adding .idea files. Updating main.go : Configuration of the application and the server. Creating our first handler for the endpoint /v1/healthcheck with healtcheck.go file. 2025-10-09 21:38:00 +02:00