سلام دوستان
چطوری میتونم کل توکن های کاربر رو توی پاسپورت پاک کنم ؟
میخوام ورود کاربر توی اپ جوری باشه که هر کاربر فقط از یه دیوایس برای کار با اپ استفاده کنه و بعد از هر لاگین توکن های قبلی غیر قابل استفاده و یا حذف بشن.
درود
در Passport یه تریت "HasApiTokens" داریم. مستندات لاراول توصیه میکنه این تریت رو به مدل User اضافه کنیم.
یکی از متدهای این تریت متد "tokens" هست که یه رابطه hasMany بین مدل "Laravel\Passport\Token" و مدلی که از تریت استفاده میکنه بوجود میاره. میتونید از این متد برای دریافت لیست تمام توکن های کاربر استفاده کنید.
$userTokens = $userInstance->tokens;
حالا مدل Token خودش یه متد "revoke" داره که به شکل زیر میتونی استفاده کنی و تمام توکنها رو حذف کنی:
foreach($userTokens as $token) {
$token->revoke();
}
آیا مایل به ارسال نوتیفیکیشن و اخبار از طرف راکت هستید ؟