Your Web News in One Place

Help Webnuz

Referal links:

Sign up for GreenGeeks web hosting
May 23, 2022 07:36 pm GMT

Rest e seus nveis de maturidade

O que sabemos sobre Rest:

  • Muitos desenvolvedores "j sabem trabalhar com REST";
  • Representational state of transfer (Transferncia Representacional de Estado);
  • surgiu em 2000 por Ray Fielding em uma dissertao de doutorado;
  • Simplicidade;
  • Stateless (sem guardar estado);
  • Cachevel;

REST: Nveis de maturidade (Richardson Maturity Model)

  • Nvel 0 - POX:

Nvel 0 de maturidade significa que uma determinada aplicao no utilizou os recursos de URI, mtodos HTTP e Hypermedia (HATEOAS);

Iremos notar que nesse exemplo modelo mais comum, faz uso apenas de verbos POST e GET:

POST - http://localhost:3005/products/saveProduct
Image description

GET - http://localhost:3005/products/getProduct/628bd53ff6a8e68c40859468

Image description

Logo... nada a ver com REST e muito distante de RESTful.

  • Nvel 1 - Recursos:

Nvel 1 de maturidade considera a utilizao eficiente de URIs. Os recursos so mapeados, porm no empregam com eficincia o uso dos verbos.

Image description

  • Nvel 2 - VERBOS HTTP (HTTP VERBS):

Nvel 2 de maturidade considera o uso eficiente de URIs e verbos HTTP.

Nesse nvel, a API suporta os seguintes verbos HTTP:

HTTP POST: utilizado para criar registro em banco de dados;

HTTP GET: utilizado para a leitura de registros em banco de dados;

HTTP PUT: utilizado para atualizar um determinado registro em banco de dados;

HTTP PATCH: utilizado para atualizar parte de um determinado registro em banco de dados.

Exemplo:

POST /products{ name: "Notebook Samsung Book Np550 Celeron" description: "4gb 500gb 15.6 W11 Cinza"}
HTTP/1.1 201 CreatedLocation: /products/628bda5a314e825e8965e05a
  • Nvel 3 - HATEOAS:

Nvel 3 conhecido por Hypermedia as the Engine of Application State, Roy Fielding descreve HATEOAS como uma das premissas necessrias para considerar um API RESTful.

Exemplo:

Image description

Referncias:

Cdigo de exemplo: https://github.com/williamkoller/rest-example-with-nestjs

Espero ter ajudado <3;


Original Link: https://dev.to/williamkoller/rest-e-seus-niveis-de-maturidade-3mf2

Share this article:    Share on Facebook
View Full Article

Dev To

An online community for sharing and discovering great ideas, having debates, and making friends

More About this Source Visit Dev To