我使用灯塔-php进行GraphQL订阅和推送。灯塔-php5 5给graphql/subscriptions/auth
。但是我找不到如何设置这个api。
我的应用程序有多个身份验证(用户和管理),所以我想切换保护。然后我创建api路由,
Route::middleware(['guard_xxx'])->group(function(){
Route::post('xxx/graphql/subscriptions/auth', '\Nuwave\Lighthouse\Subscriptions\SubscriptionController@authorize');
});
config/灯塔.
'guard' => 'guard_yyy',
我运行xxx/graphql/subscriptions/auth
,但guard_yyy运行。我想使用guard_xxx。
发布于 2022-04-17 16:32:30
您已经手动定义了订阅身份验证路由。我想现在发生的是灯塔盖过了那座。您需要禁用“一个灯塔正在注册”,您可以通过进入您的config/lighthouse.php
配置文件并找到您正在使用的广播程序来做到这一点,它应该如下所示:
'subscriptions' => [
// ...
'broadcasters' => [
// ...
'pusher' => [
'driver' => 'pusher',
'routes' => \Nuwave\Lighthouse\Subscriptions\SubscriptionRouter::class . '@pusher',
'connection' => 'pusher',
],
],
从广播器配置中删除routes
密钥,以阻止灯塔注册广播身份验证路由本身,以便您可以定义它并为其设置不同的保护。
还请注意,这也将导致没有注册您可能需要的Puserweb钩子路由,因此您也需要自己定义该路由。
https://stackoverflow.com/questions/71901711
复制相似问题