2016-04-23 16 views
0

In meiner Routen Config gefunden ich habe:Rails 5, Route erklären, aber nicht

constraints subdomain: 'api' do 
    scope module: 'api' do 
     namespace :v1 do 
      get '/me', to: 'users#me' 
     end 
    end 
end 

bin/Rake Routen Rück

v1_me GET /v1/me(.:format)  api/v1/users#me {:subdomain=>"api"} 

Wenn ich die uri http://localhost:3000/v1/me versuchen, http://localhost:3000/api/v1/me oder http://localhost:3000/me mit Postbote i habe einen Fehler 404 nicht gefunden.

ActionController::RoutingError (No route matches [GET] "/v1/me"): 

Was ist falsch an meinem Code?

Antwort

1

Sie haben eine Einschränkung für Unterdomäne festgelegt. Sie müssen also über etwas wie api.localhost:3000 zugreifen, die out-of-the-box für keine dev env funktioniert.

Ihre Routen stellen sicher, dass der angegebene Endpunkt nur für die Subdomäne api definiert ist.

Sie können diese versuchen:

http://api.lvh.me:3000

http://api.localhost:3000

Sie können Einträge in der Hosts-Datei hinzufügen müssen, um alle benutzerdefinierten Domain verweisen auf 127.0.0.1

1

Sie können eine Sub-Domain verwenden Zugriff auf localhost, so http://api.lvh.me:3000/

Also dein U RL wird http://api.lvh.me:3000/api/v1/me