2015-02-05 6 views
0

Я новичок в API и Sinatra, и мне было интересно, есть ли хорошие камни для правильного управления REST API с помощью Sinatra. Я использую пространство имен прямо сейчас, как это:Sinatra API Versioning

namespace '/api/v1' do 
    #routes and stuff here 
end 

Так что, если у меня была версия 2, я бы просто создать другое пространство имен, я полагаю.

+0

Вы можете сделать это, или вы могли бы сделать, 'пространство имен '/ API/v: версия' do' который даст вам Params [: версия ], и вы сможете изменить поведение, основанное на этом. Любой из них в порядке, в зависимости от различий между версиями. Поведение все равно в библиотеках, так? :) – Satya

+2

Взгляните на виноградную жемчужину https://github.com/intridea/grape – ptierno

ответ

1

В файле config.ru, вы можете указать отображение:

map('/v2') { run ClassNameV2 } 
map('/v1') { run ClassNameV1 }