ruby-on-rails API Rails路由,其中令牌是路由的一部分

vwoqyblh  于 2023-05-19  发布在  Ruby
关注(0)|答案(1)|浏览(144)

我需要创建一个Ruby on Rails API其中的路由如下所示

mydomain.com/api/v1/xxxxxxxx/
mydomain.com/api/v1/xxxxxxxx/messages
mydomain.com/api/v1/xxxxxxxx/authors/123/books

xxxxxxxx表示API密钥,应该将其作为params[:key]或类似的params[:api_connection_key]来获取
例如,mydomain.com/api/v1/xxxxxxxx/messages指向app/controllers/API/v1/messages_controller.rb
我想知道你会如何设计config/routes.rb来实现这一点?(控制器和其他逻辑都很好,只是路由)
no mydomain.com/api/v1/messages?key=xxxxxxxx不是一个选项,Header身份验证是不可能的

c90pui9n

c90pui9n1#

scope支持动态段

Rails.application.routes.draw

  namespace :api do
    namespace :v1 do
      scope "/:key" do
        resources :messages
      end
    end
  end
  
end

相关问题