یک سرور Node.js با Express بسازید که امکان ثبتنام و ورود کاربر با استفاده از JWT را فراهم کند و یک مسیر محافظتشده را فقط برای کاربران احراز هویتشده در دسترس قرار دهد.
1.0 بازدید آخرین ویرایش در 221 روز قبل ساعت 01:10 0.0
در JavaScript از Express برای روتها، از bcrypt برای هش کردن رمز عبور و از jsonwebtoken برای تولید و بررسی توکنها استفاده کنید؛ کاربران میتوانند در حافظه (آرایه) ذخیره شوند تا پیادهسازی ساده بماند. هنگام ورود، توکن JWT با یک secret تولید و در پاسخ برگردانده شود و برای مسیر محافظتشده یک middleware بنویسید که هدر Authorization را بررسی، توکن را تأیید و سپس اجازه دسترسی را بدهد. نکات: ورودیها را اعتبارسنجی کنید، از expiresIn برای توکن استفاده کنید، و خطاها (نام کاربری تکراری، رمز اشتباه، توکن نا معتبر) را بهخوبی هندل کنید.
1 پاسخ
جدید ترین قدیمی ترین بالاترین امتیاز پاسخ های من
در حال بارگیری...
برای ارسال پاسخ باید با حساب کاربری وارد شوید.
ورود به حساب کاربری
ایده خوبی است از JWT با secret محیطی و expiresIn مناسب استفاده کنید و توکن را در هدر Authorization با فرمت Bearer بررسی کنید. برای امنیت بهتر تنها شناسه کاربر را در payload توکن قرار دهید و اطلاعات حساس را در دیتابیس نگه دارید. برای نمونه از آرایهای در حافظه استفاده کنید اما بهعنوان پروژه واقعی از دیتابیس و حداقل 10 دور SALT برای bcrypt استفاده کنید و تفاوت bcrypt.hash و bcrypt.compare را در ورود پیاده کنید. از پاسخهای بازگشتی مناسب مانند 400 برای ورودیهای نامعتبر و 401 برای عدم احراز هویت استفاده کنید و middlewareای ایجاد کنید که توکن را تأیید کند و کاربر را به req.user اضافه کند.
گزارش