🎉 سال نو، مهارت نو، مشاوره رایگان نقشه راه برنامه نویسی (آفر ویژه ثبت نام قبل از افزایش قیمت 🔥)
۰ ثانیه
۰ دقیقه
۰ ساعت
۲ دانشجوی سون‌لرن
hit database
جامعه پایتون (وب) ایجاد شده در ۰۸ آذر ۱۴۰۱

سلام به همه ی دوستان خسته نباشین

استاد تو ویدیو تاکید دارن که هیچ hit به دیتابیس زده نمیشه زمانی که ما داریم از JWT استفاده میکنیم

ولی یه سوال زمانی که ما داریم یوزر و پسوورد میفرستیم چطور؟

درووود دوست عزیز

بزار اینجوری واست توضیح بدم که کامل تفاوتشون متوجه بشی:

قبل از موارد پیش رو اگ ساختار jwt رو دیده باشی شامل سه بخش هست هر توکن که یکیش payload که شامل id کاربره که با دیکد و انکد شدن یه سری توکن دیگه مثل secret key توی settings.py احراز انجام میشه

توکن :

  • DRF's builtin Token Authentication : ( یک توکن برای همه سشن‌ها ، هیچ محدودیت زمانی نمیشه براش روی توکن تعیین کرد)
  • DRF JWT Token Authentication : ( برای هر سشن یک توکن ، محدودیت زمانی برای هر توکن )

دیتابیس :

DRF's builtin Token Authentication

( یک hit به دیتابیس برای واکشی کاربری که اون توکن رو داره ، اپدیت کردن وضعیت کاربر ، احراز هویت کاربر)

DRF JWT Token Authentication :

( دیکد کردن توکن از payload ، تعیین محدودیت برای verify توکن ،یک hit به دیتابیس برای واکشی کاربری که اون id که توی payload هست رو داره ، اپدیت کردن وضعیت کاربر ، احراز هویت کاربر)

مزایا :

DRF's builtin Token Authentication

  • اجازه میده که force logout انجام بشه اگر یه توکن بجای توکن اصلی قرار بگیره (مثلا تغیر رمز عبور)

DRF JWT Token Authentication

  • توکن میتونه محدودیت زمانی داشته باشه
  • هیچ درخواستی به دیتابیس زده نمیشه که ببینه توکن معتبر هست یا نه

معایب :

DRF's builtin Token Authentication

  • hit به دیتابیس توی همه درخواست‌ها (all requests)
  • سیگنال توکن برای همه سشن ها

DRF JWT Token Authentication

  • هنگامی که توکن صادر شد، هر کسی که توکن را داشته باشه میتونه درخواست بزنه.

امیدوارم مفید بوده باشه

موفق باشی?


بهترین پاسخ
Reza Mobaraki ۰۸ آذر ۱۴۰۱، ۱۸:۴۷

سلام محمد عزیز وقت بخیر

اگر مشکلت حل شده ممنون میشم تایید رو بزنی تا تاپیکت بسته بشه .


Reza Mobaraki ۰۹ آذر ۱۴۰۱، ۰۸:۳۶