package rest_handler import ( "net/http" "github.com/labstack/echo/v4" ) func GuessLetter(c echo.Context) error { session, user, err := GetData(c) if err != nil { return c.String(http.StatusBadRequest, err.Error()) } if session.CurrentUser != user { return c.String(http.StatusBadRequest, "It's not the turn of user "+user.Name+". It's the turn of "+session.CurrentUser.Name+".") } type BodyContent struct { Guess string } var bodyContent BodyContent err = c.Bind(&bodyContent) if err != nil { return c.String(http.StatusBadRequest, err.Error()) } _, err = session.GuessLetter(bodyContent.Guess) if err != nil { return c.String(http.StatusBadRequest, err.Error()) } return c.JSON(http.StatusOK, ResponseData{ User: user, Session: session, }) }