我正在尝试在rails metal中实现http基本身份验证。 使用此代码:
class Api
def self.call(env)
if env["PATH_INFO"] =~ /^\/client/
Rack::Auth::Basic.new(env) do |user, password|
raise 'ERROR'
end
但这个块从未执行过?任何帮助将不胜感激!
答案 0 :(得分:3)
我可能会建议这种做法吗?在config / environments / yourenv.rb中添加
config.middleware.insert_after(::Rack::Lock, "::Rack::Auth::Basic", "Staging") do |u, p|
u == ENV['HTTPUSER'] && p == ENV['HTTPPASS']
end