我正在使用silex创建一个api,我的路由看起来类似于这样:
$api = $app['controllers_factory'];
$users = $app['controllers_factory'];
$users->match('/', UsersController::action);
$api->mount('/users', $users);
$app->mount('/api', $api);所以路由将是baseurl/api/user
我现在要做的是将一个and ()附加到$api控制器组,并对api强制验证,这样任何以/api/.user为前缀的链接都需要验证。但是这似乎不是它的工作方式,当我在$api中放置一个前缀时,它只适用于/api的根,而不是api//api或api/post或api/类别,他们需要自己的中间件。
所以我的问题是:我如何在baseurl/api/.要求在Silex环境中进行验证。
发布于 2015-10-27 14:32:03
您可以将before()添加到$app实例中(参见http://silex.sensiolabs.org/doc/middlewares.html#before-middleware)。
并测试$request对象,以确定是否需要身份验证。
您也可以使用SecurityServiceProvider,但根据用例的不同,这可能会导致过度使用。
https://stackoverflow.com/questions/33370543
复制相似问题