我正在使用微框架构建api。
我有以下路线:
/users/{user_id}
/users/{user_id}/friends
/users/{user_id}/pictures
创建以下别名的最简洁方法是什么?
/me
/me/friends
/me/pictures
答案 0 :(得分:1)
Phalcon路由器支持正则表达式,但它们略有限制,所以我不是100%肯定这会起作用。此外,路由适用于微型应用程序的方式可能有所不同,但您可以尝试使用这样的正则表达式。确保$userId
默认为null
- 如果它为空,那么您就知道它是当前用户。
$app->get('(?:/users/(\\w+)|/me)', function($userId = null){});
如果这不起作用,那么将处理程序取出到非匿名函数并指定两个路由将是唯一的方法。您还可以使用允许对处理程序进行分组的micro collections。
$app->get('/me', 'userView');
$app->get('/users/{user_id}', 'userView');