34
Criando API’s com Rails Ricardo Silva com uma abordagem simples e descomplicada :)

Rest API's with Ruby on Rails

Embed Size (px)

Citation preview

Page 1: Rest API's with Ruby on Rails

Criando API’s com Rails

Ricardo Silva

com uma abordagem simples e descomplicada :)

Page 2: Rest API's with Ruby on Rails

Ricardo Silva /ricardo.b.silva13

@ricardobsilva

Page 3: Rest API's with Ruby on Rails

Tá, mas o que significa API? Para que serve? O que faz?

Page 4: Rest API's with Ruby on Rails

Application Programming Interface

O que significa?

Application Programming Interface ou, em português, “Interface de Programação de Aplicativos”.

fonte: http://www.tecmundo.com.br/programacao/1807-o-que-e-api-.htm

Page 5: Rest API's with Ruby on Rails

A API serve para interligar diversas funções em uma aplicação (por exemplo, busca de imagens,

notícias, artigos, etc.) de modo a possibilitar que possam ser utilizadas em outras aplicações.

Para que serve?

Page 6: Rest API's with Ruby on Rails

O que faz?

Page 7: Rest API's with Ruby on Rails

JSON

Page 8: Rest API's with Ruby on Rails

Porque usar Rails para desenvolver minhas API’s?

Page 9: Rest API's with Ruby on Rails

Rails é ...● fácil de aprender

● produtivo

● simples

● divertido

● e quase tão bom quanto as canções do Oasis

Page 10: Rest API's with Ruby on Rails

Um pouco sobre o Rails (e Ruby)

Ruby é uma linguagem : ruby é uma linguagem dinâmica e open source com foco na simplicidade e na produtividade

Rails é um framework : Rails é um framework escrito em Ruby que facilita o desenvolvimento da sua aplicação web. Rails usa de forma inteligente as capacidades unicas da linguagem Ruby, que é o que a torna tão diferente.

Page 11: Rest API's with Ruby on Rails

Chega de teoria,vamos começar

Page 12: Rest API's with Ruby on Rails

rails new api

rails g model person name:string email:string hability:string local:string obs:text

rake db:migrate

Gerando nossos modelos

Page 13: Rest API's with Ruby on Rails

active model serializer

Gems necessárias

bundle

Page 14: Rest API's with Ruby on Rails

Versionando sua API

Page 15: Rest API's with Ruby on Rails

Criando os diretórios responsáveis pelo versionamento da API

dentro de controller, criamos: ‘api/v1’

namespace :api , defaults: {format: :json} do namespace :v1 do

endend

em ‘config/routes.rb’ crie o caminho que aponta para versão dos seus serviços

Page 16: Rest API's with Ruby on Rails

Gerando nossos serviços

rails g scaffold_controller 'api/v1/person'

Page 17: Rest API's with Ruby on Rails

alguns ajustes no controller

Page 18: Rest API's with Ruby on Rails

antes depois

Page 19: Rest API's with Ruby on Rails

antes depois

Page 20: Rest API's with Ruby on Rails

antes depois

Page 21: Rest API's with Ruby on Rails

antes depois

Page 22: Rest API's with Ruby on Rails

antes depois

Page 23: Rest API's with Ruby on Rails

antes depois

Page 24: Rest API's with Ruby on Rails

antes depois

Page 25: Rest API's with Ruby on Rails

declarando as rotas

Page 26: Rest API's with Ruby on Rails

em ‘config/routes.rb’

Page 27: Rest API's with Ruby on Rails

primeiros testes

Page 28: Rest API's with Ruby on Rails

[POST] criando um registro

Page 29: Rest API's with Ruby on Rails

esse é o resultado

Ok, criou. Cadê o restante dos dados?

Page 30: Rest API's with Ruby on Rails

Um ultimo ajuste

Page 31: Rest API's with Ruby on Rails

[POST] mais uma vez

Page 32: Rest API's with Ruby on Rails

agora sim ! \o/

Page 33: Rest API's with Ruby on Rails

o que mais estudar?

● Arquitetura REST

● Autenticação via TOKEN

● Cliente-servidor

● TDD

Page 34: Rest API's with Ruby on Rails

FIM