Зміни в документі Версія 6: Налаштування
Остання зміна 2024/07/11 10:07 автором Ashterix
Підсумок
-
Властивості сторінки (1 змінено, 0 додано, 0 видалено)
Подробиці
- Властивості сторінки
-
- Вміст
-
... ... @@ -56,6 +56,19 @@ 56 56 57 57 58 58 59 + 60 + 61 + 62 + 63 + 64 + 65 + 66 + 67 + 68 + 69 + 70 + 71 + 59 59 == {{code language="none"}}clients_tokens{{/code}} == 60 60 61 61 Тепер слід вказати масив клієнтськіх токенів, які будуть мати доступ до API. ... ... @@ -130,7 +130,7 @@ 130 130 public function __construct(protected UserService $userService) {} 131 131 132 132 public function isValid(string $token): bool 133 - {146 + { 134 134 try { 135 135 $this->userService->getUserByToken($token); 136 136 return true; ... ... @@ -140,3 +140,24 @@ 140 140 } 141 141 } 142 142 {{/code}} 156 + 157 +(% class="box warningmessage" %) 158 +((( 159 +**ВАЖЛИВО!!!** 160 +Метод {{code language="none"}}isValid{{/code}} має повертати {{code language="none"}}true{{/code}} якщо токен існує і валідний, або викидати {{code language="none"}}Ufo\RpcError\RpcInvalidTokenException{{/code}} в іншому разі. 161 +))) 162 + 163 +Після цього вам потрібно в файлі {{code language="none"}}config/services.yaml{{/code}} прописати що класи, що мають залежність від інтерфейса {{code language="none"}}ITokenValidator{{/code}} мають приймати ваш новий клас. 164 + 165 +{{code language="yaml" layout="LINENUMBERS" title="config/services.yaml"}} 166 +parameters: 167 + # some parameters list 168 + # ... 169 + 170 +services: 171 + # some services list 172 + # ... 173 + 174 + Ufo\JsonRpcBundle\Security\Interfaces\ITokenValidator: 175 + class: App\Services\RpcSecurity\UserTokenValidator 176 +{{/code}}