"यदि कोई कर्मचारी अपना काम अच्छी तरह से करना चाहता है, तो उसे पहले अपने औजारों को तेज करना होगा।" - कन्फ्यूशियस, "द एनालेक्ट्स ऑफ कन्फ्यूशियस। लू लिंगगोंग"
मुखपृष्ठ > प्रोग्रामिंग > लारवेल में "फेसबुक के साथ लॉगिन करें" कैसे लागू करें

लारवेल में "फेसबुक के साथ लॉगिन करें" कैसे लागू करें

2024-10-31 को प्रकाशित
ब्राउज़ करें:139

How to Implement \

यह ट्यूटोरियल आपके लारवेल एप्लिकेशन में फेसबुक लॉगिन कार्यक्षमता जोड़ने की प्रक्रिया में आपका मार्गदर्शन करेगा।

आवश्यक शर्तें

  • लारवेल परियोजना की स्थापना
  • संगीतकार स्थापित
  • फेसबुक डेवलपर खाता

चरण 1: एक फेसबुक ऐप बनाएं

  1. फेसबुक डेवलपर्स पर जाएं
  2. "मेरे ऐप्स" पर क्लिक करें और फिर "ऐप बनाएं" पर क्लिक करें
  3. ऐप प्रकार के रूप में "उपभोक्ता" चुनें
  4. ऐप विवरण भरें और ऐप बनाएं
  5. ऐप डैशबोर्ड में, अपनी ऐप आईडी और ऐप सीक्रेट नोट करें

चरण 2: लारवेल सोशलाइट स्थापित करें

लारवेल सोशलाइट फेसबुक, ट्विटर, गूगल, लिंक्डइन, गिटहब, गिटलैब और बिटबकेट के साथ OAuth प्रमाणीकरण के लिए एक अभिव्यंजक, धाराप्रवाह इंटरफ़ेस प्रदान करता है।
इसे संगीतकार के माध्यम से स्थापित करें:

composer require laravel/socialite

चरण 3: सोशलाइट को कॉन्फ़िगर करें

अपनी config/services.php फ़ाइल में निम्नलिखित जोड़ें:

'facebook' => [
    'client_id' => env('FACEBOOK_CLIENT_ID'),
    'client_secret' => env('FACEBOOK_CLIENT_SECRET'),
    'redirect' => env('FACEBOOK_REDIRECT_URI'),
],

फिर, इन्हें अपनी .env फ़ाइल में जोड़ें:

FACEBOOK_CLIENT_ID=your_facebook_app_id
FACEBOOK_CLIENT_SECRET=your_facebook_app_secret
FACEBOOK_REDIRECT_URI=http://localhost:8000/login/facebook/callback

चरण 4: रूट सेट करें

इन मार्गों को अपने मार्गों/web.php में जोड़ें:

use App\Http\Controllers\Auth\FacebookController;

Route::get('login/facebook', [FacebookController::class, 'redirectToFacebook'])->name('login.facebook');
Route::get('login/facebook/callback', [FacebookController::class, 'handleFacebookCallback']);

चरण 5: फेसबुककंट्रोलर बनाएं

एक नया नियंत्रक बनाएं:

php artisan make:controller Auth/FacebookController

नियंत्रक लागू करें:

redirect();
    }

    public function handleFacebookCallback()
    {
        try {
            $user = Socialite::driver('facebook')->user();
            $finduser = User::where('facebook_id', $user->id)->first();

            if ($finduser) {
                Auth::login($finduser);
                return redirect()->intended('dashboard');
            } else {
                $newUser = User::create([
                    'name' => $user->name,
                    'email' => $user->email,
                    'facebook_id'=> $user->id,
                    'password' => encrypt('123456dummy')
                ]);

                Auth::login($newUser);
                return redirect()->intended('dashboard');
            }
        } catch (\Exception $e) {
            dd($e->getMessage());
        }
    }
}

चरण 6: उपयोगकर्ता मॉडल अपडेट करें

अपने उपयोगकर्ता मॉडल में भरने योग्य सरणी में facebook_id जोड़ें:

protected $fillable = [
    'name',
    'email',
    'password',
    'facebook_id',
];

चरण 7: उपयोगकर्ता तालिका में फेसबुक आईडी जोड़ें

एक नया माइग्रेशन बनाएं:

php artisan make:migration add_facebook_id_to_users_table

नई माइग्रेशन फ़ाइल में:

public function up()
{
    Schema::table('users', function ($table) {
        $table->string('facebook_id')->nullable();
    });
}

public function down()
{
    Schema::table('users', function ($table) {
        $table->dropColumn('facebook_id');
    });
}

माइग्रेशन चलाएँ:

php artisan migrate

चरण 8: लॉगिन बटन जोड़ें

अपने लॉगिन दृश्य में, "फ़ेसबुक के साथ लॉगिन करें" बटन जोड़ें:


    Login with Facebook

विज्ञप्ति वक्तव्य यह आलेख यहां पुन: प्रस्तुत किया गया है: https://dev.to/johnmaths9/how-to-implement-login-with-facebook-in-laravel-2m5p?1 यदि कोई उल्लंघन है, तो कृपया हटाने के लिए स्टडी_गोलंग@163.com पर संपर्क करें यह
नवीनतम ट्यूटोरियल अधिक>

चीनी भाषा का अध्ययन करें

अस्वीकरण: उपलब्ध कराए गए सभी संसाधन आंशिक रूप से इंटरनेट से हैं। यदि आपके कॉपीराइट या अन्य अधिकारों और हितों का कोई उल्लंघन होता है, तो कृपया विस्तृत कारण बताएं और कॉपीराइट या अधिकारों और हितों का प्रमाण प्रदान करें और फिर इसे ईमेल पर भेजें: [email protected] हम इसे आपके लिए यथाशीघ्र संभालेंगे।

Copyright© 2022 湘ICP备2022001581号-3