Lumen:添加中间件来打包定义的路由
Lumen: add middleware to package defined routes
我在将中间件添加到供应商包的现有路由时遇到问题。我在 Lumen(由 Laravel 创建的微服务框架)之上构建了一个 API。我正在使用 Passport 进行 oauth 身份验证并导入此包:https://github.com/dusterio/lumen-passport 以在 Lumen 中使用 Passport。我已经实现了一个请求令牌的自定义路由,并希望阻止对现有护照路由的请求:/oauth/token。但我自己也需要这条路线,以便从我的自定义路线重定向令牌请求。
我试图像这样覆盖现有路线:
$app->post('/oauth/token', [
'middleware' => 'reject',
'uses' => '\Dusterio\LumenPassport\Http\Controllers\AccessTokenController@issueToken'
]);
但这会在没有异常跟踪的情况下向我返回 500。
我正在使用自定义路由来请求令牌,以便根据用户的角色设置令牌范围。我正在使用范围来检查用户(或具有其他授权类型的应用程序)的角色,Passport 的正常令牌路由应该被阻止给除 Lumen self 之外的所有人。有了这个,只有 Lumen 应该能够设置范围。
TLDR:如何添加中间件来打包 Lumen 中定义的路由。
https://github.com/dusterio/lumen-passport 的最新合并支持为护照路由添加前缀。
我在 composer.json 中添加了 "dusterio/lumen-passport": "dev-master",
,在 bootstrap/app.php.
的末尾添加了 Dusterio\LumenPassport\LumenPassport::routes($app, [ 'prefix' => 'api/v1/protected', 'middleware' => 'reject', ]);
查看此问题以获取更多信息:https://github.com/dusterio/lumen-passport/issues/31
我在将中间件添加到供应商包的现有路由时遇到问题。我在 Lumen(由 Laravel 创建的微服务框架)之上构建了一个 API。我正在使用 Passport 进行 oauth 身份验证并导入此包:https://github.com/dusterio/lumen-passport 以在 Lumen 中使用 Passport。我已经实现了一个请求令牌的自定义路由,并希望阻止对现有护照路由的请求:/oauth/token。但我自己也需要这条路线,以便从我的自定义路线重定向令牌请求。 我试图像这样覆盖现有路线:
$app->post('/oauth/token', [
'middleware' => 'reject',
'uses' => '\Dusterio\LumenPassport\Http\Controllers\AccessTokenController@issueToken'
]);
但这会在没有异常跟踪的情况下向我返回 500。
我正在使用自定义路由来请求令牌,以便根据用户的角色设置令牌范围。我正在使用范围来检查用户(或具有其他授权类型的应用程序)的角色,Passport 的正常令牌路由应该被阻止给除 Lumen self 之外的所有人。有了这个,只有 Lumen 应该能够设置范围。
TLDR:如何添加中间件来打包 Lumen 中定义的路由。
https://github.com/dusterio/lumen-passport 的最新合并支持为护照路由添加前缀。
我在 composer.json 中添加了 "dusterio/lumen-passport": "dev-master",
,在 bootstrap/app.php.
Dusterio\LumenPassport\LumenPassport::routes($app, [ 'prefix' => 'api/v1/protected', 'middleware' => 'reject', ]);
查看此问题以获取更多信息:https://github.com/dusterio/lumen-passport/issues/31