تکنولوژی نوین اینترنتی
Laravel Socialite یک پکیج لاراول برای احراز هویت از طریق سرویسهای مختلف مثل گوگل، فیسبوک، گیتهاب و غیره هست. این پکیج میتواند فرایند ورود کاربران از طریق این سرویسها رو خیلی سادهتر کنه.
برای احراز هویت کاربران از طریق سرویسهای اجتماعی (مثل گوگل، فیسبوک و غیره)
اولین قدم نصب پکیج laravel/socialite
است:
.env
برای احراز هویت با سرویسهای مختلف، باید کلیدها و رازهای API رو از سرویسدهندهها (مثل گوگل یا فیسبوک) بگیرید و در فایل .env
قرار بدید.
config/services.php
در فایل config/services.php
سرویسهای گوگل و فیسبوک رو پیکربندی میکنیم.
در فایل routes/web.php
برای هر سرویس یک مسیر برای هدایت کاربر به صفحه احراز هویت اضافه میکنیم.
اولین مسیر: کاربر رو به صفحه احراز هویت گوگل یا فیسبوک هدایت میکنه.
دومین مسیر (Callback): بعد از اینکه کاربر احراز هویت کرد، به این مسیر باز میگرده. اینجا اطلاعات کاربر از سرویس (مثل گوگل یا فیسبوک) دریافت میشه و میتونید اون رو ذخیره کنید یا کاربر رو لاگین کنید.
زمانی که کاربر از طریق گوگل یا فیسبوک وارد شد، دادههای مربوط به اون کاربر مثل نام، ایمیل و تصویر پروفایل رو میتونید دریافت کنید:
حذف یا عدم ذخیره اطلاعات: اگر بخواهید فقط ورود انجام بشه و اطلاعات کاربر رو ذخیره نکنید، میتونید فقط از متد Auth::login()
استفاده کنید.
عدم ذخیره پسورد: وقتی از Socialite استفاده میکنید، هیچ وقت پسورد کاربر ذخیره نمیشود. این فقط برای ورود به سیستم هست.
استفاده از findOrCreate
: بهجای نوشتن کدهای زیاد برای ذخیره و بهروز رسانی، میتونید یک متد خاص بسازید که این کارها رو به صورت اتوماتیک انجام بده.
سرویس | مرحله |
---|---|
نصب پکیج Socialite | composer require laravel/socialite |
پیکربندی در .env | ذخیره کلیدها و مقادیر در .env |
پیکربندی در services.php | افزودن مقادیر به config/services.php |
تعریف مسیرها | استفاده از Socialite::driver('google')->redirect() |
دریافت اطلاعات کاربر | Socialite::driver('google')->user() |