2012-08-01 70 views
18

我想通過子域(https://api.domain.com)訪問我的Rails應用程序的API。我有以下途徑定義: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他們應該留在哪裏。

我試圖映射路線,但沒有任何成功。有人知道如何解決這個問題嗎?

回答

21

變化

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

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

簡單得不能再簡單,非常感謝! – smek 2012-08-23 07:51:27

+4

'路徑:'/''也適用 – Dennis 2014-12-15 17:20:37