#ruby #rack
#ruby #rack
Вопрос:
как я могу добавить это
use Rack::Auth::Basic do |username, password|
username == 'pippo' amp;amp; password == 'pluto'
end
для этого
class HelloWorld
def call(env)
req = Rack::Request.new(env)
case req.path_info
when /badges/
[200, {"Content-Type" => "text/html"}, ['This is great !!!!']]
when /goodbye/
[500, {"Content-Type" => "text/html"}, ["Goodbye Cruel World!"]]
else
[404, {"Content-Type" => "text/html"}, ["I'm Lost!"]]
end
end
end
run HelloWorld.new
У меня есть это простое приложение для стойки, и мне нужно добавить Auth ::Basic.
Спасибо
Ответ №1:
Вам нужно использовать Rack::Builder для создания стека приложений для стойки.
Пример:
# app.ru
require 'rack'
class HelloWorld
def call(env)
req = Rack::Request.new(env)
case req.path_info
when /badges/
[200, {"Content-Type" => "text/html"}, ['This is great !!!!']]
when /goodbye/
[500, {"Content-Type" => "text/html"}, ["Goodbye Cruel World!"]]
else
[404, {"Content-Type" => "text/html"}, ["I'm Lost!"]]
end
end
end
app = Rack::Builder.new do
use Rack::Auth::Basic do |username, password|
username == 'pippo' amp;amp; password == 'pluto'
end
map '/' do
run HelloWorld.new
end
end
run app
И для его запуска:
$ rackup app.ru