子域上的api的路由路由

时间:2012-08-01 15:18:36

标签: api routes subdomain ruby-on-rails-3.2

我想通过子域(https://api.domain.com)访问我的Rails应用程序的API。我定义了以下路线:

constraints :subdomain => 'api' do
  namespace :api, defaults: {format: 'json'} do
    scope module: :v1, constraints: ApiConstraints.new(version: 1, default: true) do
      resources :posts
    end
  end
end

这有效,但会产生以下网址:

https://api.domain.com/api/posts

我希望它是:

https://api.domain.com/posts

API控制器位于 app / controllers / api / v1 中,应该留在那里。

我尝试绘制路线但没有任何成功。有人知道如何解决这个问题吗?

1 个答案:

答案 0 :(得分:21)

更改

namespace :api, defaults: {format: 'json'} do

namespace :api, path: nil, defaults: {format: 'json'} do