给定一个URL路径,我可以获取用于满足请求的URL参数吗?



例如,在routes.rb中我有类似

的东西
  namespace :api do
    namespace :v1 do
      post 'login/:email' => 'authentication#login', email: /[^/]+/
    end
  end

给定字符串"/api/v1/login/lisa@example.com",我想知道此路径包含一个名为 email的参数,其值为 lisa@example.com

您可以使用以下正则是

/[w+-.]+@[a-zd-.]+.[a-z]+/

这将为您带来结果

"/api/v1/login/lisa@example.com".scan(/[w+-.]+@[a-zd-.]+.[a-z]+/).first
#=> "lisa@example.com"

最新更新