Ruby on rails: 如何从机架中间件身份验证中排除特定路径?
Ruby on rails: how to exclude certain path from rack middleware authentication?
我正在尝试使用机架中间件身份验证。我想从身份验证中排除某些路径。
是否可以排除某些特定路径?
这将验证所有以 home 开头的路由。
def call(env)
request = Rack::Request.new(env)
if request.path =~ /^\/home/
super
else
@app.call(env)
end
end
我希望将路径 "home/users/" 排除在身份验证之外。从 "home/" 开始的所有其他路径都应该进行身份验证。
请任何线索,谢谢。
如果您只想排除 "home/users/" 路径,那么您的中间件应该具有以下结构,
def call(env)
request = Rack::Request.new(env)
return @app.call(env) if request.path == "home/users/"
# your middleware logic of authentication here.
end
机架的更多信息可以参考this。
我正在尝试使用机架中间件身份验证。我想从身份验证中排除某些路径。 是否可以排除某些特定路径?
这将验证所有以 home 开头的路由。
def call(env)
request = Rack::Request.new(env)
if request.path =~ /^\/home/
super
else
@app.call(env)
end
end
我希望将路径 "home/users/" 排除在身份验证之外。从 "home/" 开始的所有其他路径都应该进行身份验证。 请任何线索,谢谢。
如果您只想排除 "home/users/" 路径,那么您的中间件应该具有以下结构,
def call(env)
request = Rack::Request.new(env)
return @app.call(env) if request.path == "home/users/"
# your middleware logic of authentication here.
end
机架的更多信息可以参考this。