Implemento validación en servidor

parent 7f87ddb2
...@@ -27,6 +27,12 @@ ...@@ -27,6 +27,12 @@
<artifactId>gson</artifactId> <artifactId>gson</artifactId>
<version>2.10.1</version> <version>2.10.1</version>
</dependency> </dependency>
<dependency>
<groupId>javax.validation</groupId>
<artifactId>validation-api</artifactId>
<version>2.0.1.Final</version>
</dependency>
</dependencies> </dependencies>
<build> <build>
......
package com.example.demo; package com.example.demo;
import com.google.gson.Gson; import com.google.gson.Gson;
import com.google.gson.JsonElement;
import javax.xml.validation.Validator;
import javax.validation.*;
import java.util.ArrayList;
import java.util.List;
import java.util.Set;
import static spark.Spark.*; import static spark.Spark.*;
public class SparkRest public class SparkRest
{ {
public static void main(String[] args) { public static void main(String[] args) {
...@@ -23,9 +33,21 @@ public class SparkRest ...@@ -23,9 +33,21 @@ public class SparkRest
response.type("application/json"); response.type("application/json");
Circuito circuito = new Gson().fromJson(request.body(), Circuito.class); Circuito circuito = new Gson().fromJson(request.body(), Circuito.class);
// Validación de datos
if (circuito.getNombre() == null || circuito.getNombre().isEmpty()) {
response.status(400); // Código de error para datos no válidos
return new Gson().toJson(new StandardResponse(StatusResponse.ERROR, "El campo 'nombre' es requerido"));
}
if (circuito.getLongitud() <= 0) {
response.status(400); // Código de error para datos no válidos
return new Gson().toJson(new StandardResponse(StatusResponse.ERROR, "El campo 'longitud' debe ser mayor que cero"));
}
circuitoService.addCircuito(circuito); circuitoService.addCircuito(circuito);
return new Gson().toJson(new StandardResponse(StatusResponse.SUCCESS, new Gson().toJsonTree(circuitoService.getCircuitos())));
return new Gson().toJson(new StandardResponse(StatusResponse.SUCCESS));
}); });
get("/circuitos", (request, response) -> { get("/circuitos", (request, response) -> {
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or sign in to comment