Parametre v RESTových službách: Čo robiť s GET query a POST dátami?

1. Základný rozdiel medzi GET a POST v kontexte HTTP a REST

REST využíva HTTP metódy na vykonávanie operácií nad zdrojmi. Dve najčastejšie používané sú GET a POST:

Príklad GET požiadavky: GET /api/users?name=Jano

Príklad POST požiadavky: POST /api/users s telom:

{
  "name": "Jano",
  "email": "jano@example.com"
}

2. Anotácie (@QueryParam, @PathParam, @FormParam) a ich využitie

Framework Jersey v Java EE poskytuje anotácie na spracovanie vstupov:

@GET
@Path("/user")
public Response getUser(@QueryParam("id") int id) {
  return Response.ok("User ID: " + id).build();
}

@POST
@Path("/user/{id}")
public Response updateUser(@PathParam("id") int id, @FormParam("email") String email) {
  return Response.ok("Updated email for ID " + id).build();
}

3. Spracovanie dát z formulárov

REST služby môžu prijímať vstupy v rôznych formátoch:

Ak prijímate JSON dáta, odporúčané je použiť POJO objekt ako parameter:

@POST
@Consumes(MediaType.APPLICATION_JSON)
public Response createUser(User user) {
  return Response.ok("Created: " + user.getName()).build();
}

4. Bežné úskalia: dĺžka URL, kódovanie a bezpečnostné riziká

Pri práci s parametrami si treba dať pozor na:

Príklady problémových požiadaviek:

GET /api/users?query=drop%20table%20users;

Takéto pokusy musia byť validované a filtrované.

5. Testovanie a ladenie parametrov s Postmanom a logovanie požiadaviek

Najlepší nástroj na testovanie REST API je Postman. Môžete:

Odporúčané je zapnúť logovanie v aplikácii, napríklad cez System.out.println() alebo použiť Logger (napr. SLF4J, Logback).

Chcete sa to naučiť prakticky?

Všetky tieto techniky si môžete vyskúšať v kurze Java REST služby s Hibernate, kde vytvoríte REST API, prepojíte ho s databázou pomocou JPA a vytvoríte jednoduchý frontend v Angulare.

Ako začať programovať?

Úvod do programovania pre každého bez prechádzajúcich znalostí.

Stiahnite si náš ebook teraz výnimočne zdarma!!!

Viac informacií preberáme na kurze:

Kurz JAVAEEREST - Java REST - RESTful Web Services s Hibernate

Marián Knězek

 

Súvisiace články: