2014-09-19 5 views
0

마이크로 프레임 워크를 사용하여 API를 구축 중입니다.microalconphp에서 라우팅 별칭

I가 다음과 같은 경로 :

/users/{user_id} 
/users/{user_id}/friends 
/users/{user_id}/pictures 

뭐죠 다음과 같은 별칭을 만들 수있는 가장 깨끗한 방법은?

/me 
/me/friends 
/me/pictures 

답변

1

팔콘 라우터는 정규식을 지원하지만 약간 제한적이므로 100 % 확신 할 수는 없습니다. 또한 마이크로 애플 리케이션을위한 라우팅 작동 방식은 다를 수 있지만 이와 같은 정규식을 사용해 볼 수 있습니다. $userId의 기본값은 null입니다. null이면 현재 사용자임을 알 수 있습니다.

$app->get('(?:/users/(\\w+)|/me)', function($userId = null){}); 

이것이 작동하지 않으면 처리기를 익명이 아닌 함수로 가져와 두 개의 경로를 지정하는 것이 유일한 방법입니다. 핸들러 그룹화를 허용하는 micro collections을 사용할 수도 있습니다.

$app->get('/me', 'userView'); 
$app->get('/users/{user_id}', 'userView'); 
+0

멋진 시도를 드리겠습니다. – Boedy