Decodificando y validando peticiones

Leer el body de la petición

Un POST /bookings lleva un body JSON — el id del paseador, la fecha, cuánto dura. En el servidor, ese body es r.Body, un stream de bytes. Lo decodificas en un struct de Go con encoding/json:

type createBookingReq struct {
	WalkerID string `json:"walker_id"`
	Minutes  int    `json:"minutes"`
}

El struct tag json:"walker_id" le dice al decodificador qué clave JSON llena qué campo. (Los tags viven dentro de comillas invertidas de Go, así que solo los vas a ver en fragmentos de solo lectura como este — nunca escribas uno dentro de un ejercicio.)