Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
Boas Práticas em APIs REST
Search
Diogo Beato
June 11, 2015
Technology
2
710
Boas Práticas em APIs REST
slides para a apresentação sobre boas práticas em apis rest no papo reto da bluesoft
Diogo Beato
June 11, 2015
Tweet
Share
More Decks by Diogo Beato
See All by Diogo Beato
Cloud Native Banking
diogobeato
1
80
Testando Models
diogobeato
0
32
Logging proativo com ELKW
diogobeato
0
230
Isomorphic Javascript
diogobeato
0
140
Fundamentos da JVM
diogobeato
0
310
MinMax
diogobeato
0
92
TDC - Breaking Build
diogobeato
0
75
Breaking Build
diogobeato
0
240
Design para Programadores - Layout
diogobeato
1
53
Other Decks in Technology
See All in Technology
私が trocco を推す理由
__allllllllez__
1
260
ChatGPT for IT Service Management (IT Pro)
dahatake
7
1.6k
プラットフォームってつくることより計測することが重要なんじゃないかという話 / Platform Engineering Meetup #8
taishin
1
370
Postman v10リリース後を振り返る / Looking back at Postman v10 after release
yokawasa
1
160
TechFeed Experts Night#27 〜 フロントエンドフレームワーク最前線 (Svelte)
baseballyama
1
540
ServiceNow Knowledge Learning Rise up
manarobot
0
210
Gitlab本から学んだこと - そーだいなるプレイバック / gitlab-book
soudai
4
440
JSON攻略法.pdf
miyakemito
8
5.1k
障害対応をちょっとずつよくしていくための 演習の作りかた
heleeen
0
240
MapLibreとAmazon Location Service
dayjournal
1
160
Cracking the KubeCon CfP
inductor
2
250
検証を通して見えてきたTiDBの性能特性
lycorptech_jp
PRO
6
3.8k
Featured
See All Featured
ReactJS: Keep Simple. Everything can be a component!
pedronauck
659
120k
[Rails World 2023 - Day 1 Closing Keynote] - The Magic of Rails
eileencodes
2
1.3k
How To Stay Up To Date on Web Technology
chriscoyier
782
250k
GraphQLの誤解/rethinking-graphql
sonatard
50
9.2k
What’s in a name? Adding method to the madness
productmarketing
PRO
16
2.6k
ParisWeb 2013: Learning to Love: Crash Course in Emotional UX Design
dotmariusz
104
6.6k
Build your cross-platform service in a week with App Engine
jlugia
225
17k
Helping Users Find Their Own Way: Creating Modern Search Experiences
danielanewman
20
1.9k
Building Flexible Design Systems
yeseniaperezcruz
319
37k
Music & Morning Musume
bryan
41
5.6k
Embracing the Ebb and Flow
colly
80
4.1k
Robots, Beer and Maslow
schacon
PRO
155
7.9k
Transcript
boas práticas em Diogo Beato @dvbeato
REST - Representational State Transfer Desenvolvimento orientado a webservices Criado
por Roy Fielding
Independência de tecnologia Flexibilidade para clientes diferentes Venda de serviços
urls amigáveis: acelerato.com/tickets simples e de fácil adoção flexível para
quem for utilizar
Creates e Updates retornam o recurso NÃO utilize verbos para
os recursos Utilize sempre nomes no plural Recursos Lógicos
GET /tickets GET /tickets/12 POST /tickets PUT /tickets/12 PATCH /tickets/12
DELETE /tickets/12 Recursos Lógicos
GET /tickets/12/messages GET /tickets/12/messages/5 POST /tickets/12/messages PUT /tickets/12/messages/5 PATCH /tickets/12/messages/5
DELETE /tickets/12/messages/5 Relacionamentos
A API é tão boa quanto sua documentação Cria independencia
e autonomia Mesmo que seja uma API privada e interna Documentação
Mudanças são inevitáveis Sempre versione sua API GET /v1/tickets Versionamento
Utilize query parameters GET /tickets?state=open GET /tickets?sort=-priority,created_at Filtros e Ordenação
Para filtros comuns, crie alias GET /tickets/recently_closed Filtros e Ordenação
GET /tickets?fields=id,subject,customer_name Seleção de campos
GET /tickets?page=2&per_page=50 Paginação
Roy Fielding http://roy.gbiv.com/ Tese de Roy Fielding http://www.ics.uci.edu/~fielding/pubs/dissertation/top.htm Artigo
http://www.vinaysahni.com/best-practices-for-a-pragmatic-restful-api REFERÊNCIAS
None