Monday, February 24, 14

1
O QUE É?

Monday, February 24, 14

2
UMA ESPECIFICAÇÃO PARA
COMUNICAÇÃO ENTRE
APLICAÇÕES RUBY E
SERVIDORES WEB

Monday, February 24, 14

3
Request

Monday, February 24, 14

WebServer

Rack App

4
API RACK APP
Qualquer objeto que responde ao metodo call e receba como
parâmetro um objeto com os dados da requisição
Retorna um array com 3 elementos
[status, headers, response]

Monday, February 24, 14

5
API RACK APP
[status, headers, response]
to_i

Monday, February 24, 14

hash string

each

6
EXEMPLO

Monday, February 24, 14

7
proc {|env|
[200,
{"content-Type": "text/html"},
["Olá frevoonrails"]]

Monday, February 24, 14

8
RACK MIDDLEWARES

Monday, February 24, 14

9
Request

Middleware

Middleware

Rack App
Monday, February 24, 14

10
RAILS ON RACK

Monday, February 24, 14

11
RAKE MIDDLEWARE

Monday, February 24, 14

12
ADICIONANDO UM
RACK MIDDLEWARE AO
RAILS

Monday, February 24, 14

13
Crie seu arquivo “rack.rb” e adicione na pasta lib ou initializers

Monday, February 24, 14

14
Adicione seu rack application application.rb

Monday, February 24, 14

15
Verifique com “rake middleware”

Monday, February 24, 14

16
USOS NA VIDA REAL
Contador de acessos
Bloquear acesso
Devise(Warden)

Monday, February 24, 14

17
REFERÊNCIAS
http://guides.rubyonrails.org/rails_on_rack.html
http://rack.github.io/
https://www.youtube.com/watch?v=TslkdT3PfKc&
https://github.com/hassox/warden

Monday, February 24, 14

18
OBRIGADO!!

Monday, February 24, 14

19
OPS MAIS UMA COISA!!

Monday, February 24, 14

20
Monday, February 24, 14

21

Rails on Rack