Sobes.tech
Junior — Middle

Objasnite šta podrazumeva termin RESTful API i kako funkcioniše.

sobes.tech АИ

Одговор од АИ

RESTful API je arhitektonski stil za kreiranje web servisa koji koristi HTTP protokol i REST (Transfer of Representational State) principe. Glavna ideja je pružiti resurse (podatke) putem jedinstvenih URL-ova, koristeći standardne HTTP metode: GET (dohvat podataka), POST (kreiranje), PUT/PATCH (ažuriranje), DELETE (brisanje).

RESTful API radi na sledeći način: klijent šalje HTTP zahtev serveru sa navodom resursa i metode, server obrađuje zahtev i vraća odgovor sa podacima u JSON, XML ili drugom formatu. Ovaj pristup pojednostavljuje interakciju između klijenta i servera, čineći API lakim za razumevanje i skalabilnim.

Primer jednostavnog RESTful API-ja u C# koristeći ASP.NET Core:

[ApiController]
[Route("api/[controller]")]
public class ProductsController : ControllerBase
{
    [HttpGet]
    public IEnumerable<Product> GetAll() => productService.GetAll();

    [HttpGet("{id}")]
    public ActionResult<Product> GetById(int id)
    {
        var product = productService.GetById(id);
        if (product == null) return NotFound();
        return product;
    }

    [HttpPost]
    public IActionResult Create(Product product)
    {
        productService.Add(product);
        return CreatedAtAction(nameof(GetById), new { id = product.Id }, product);
    }
}