Делаю API который имеет 2 метода "reg" и "chekbooking"
Делаю роут виде:
CODE ( htmlphp):
скопировать код в буфер обмена
Route::set('api/ipad','api/ipad/<act>(/<object_id>)(/<booking_id>)/<device_id>', array( 'act' => '[a-z]*', 'object_id' => '[0-9]+', 'booking_id' => '[0-9]+', 'device_id' => '[^/]*' ))->defaults(array( 'directory' => 'api', 'controller' => 'ipad' ));
Пометил что параметры "object_id" и "booking_id" необязательный. А точнее когда:
act = reg, тогда нужен "object_id"
act = chekbooking, тогда нужен "booking_id"
Параметр "device_id" всегда обязательный, поэтому его в скобки не поместил.
Когда тестирую запрос результат такой:
/api/ipad/reg/30/this_is_device
/api/ipad/chekbooking/1547/this_is_device
При "chekbooking" значение "booking_id" переходит в "object_id" Я понимаю что у меня указанно "object_id" как второй параметр и поэтому, а т.к. параметр "device_id" у меня обязательный, его значение и подставляется из последнего параметра.
Вопрос: Как можно, как-нибудь отличить какой параметр я передаю в моём случае...
спс.Ув.
|