اذهب إلى المحتوى

السؤال

نشر

أحاول تنفيذ مصادقة باستخدام جدول مستخدمي WordPress في Laravel، ولكن دائمًا أتلقى استجابة غير مصرح بها، يبدوا أن تلك الاستجابة تحدث بسبب عدم قيامي بمقارنة كلمات المرور.

كلمة المرور في جدول wp_users مشفرة، بينما كلمة المرور في الطلب غير مشفرة.

ما الكيفية لمقارنة كلمات المرور باستخدام mikemclin/laravel-wp-password، فلا أعرف أين يجب وضع ذلك الأمر في الكود، وإصدار Laravel الذي أستخدمه هو 10.

في AuthController.php، لدي وظيفة login، وأريد أن أتأكد من أنني قادر على استخدام mikemclin/laravel-wp-password بشكل صحيح.

 public function login()
    {
        $credentials = ['user_email' => request('email'), 'user_pass' => request('password')];

        if (! $token = auth()->attempt($credentials)) {
            return response()->json(['error' => 'Unauthorized'], 401);
        }

        return $this->respondWithToken($token);
    }

 

Recommended Posts

  • 0
نشر

تثبيت مكتبة mikemclin/laravel-wp-password: تأكد من تثبيت المكتبة في مشروع Laravel الخاص بك عبر Composer.

إنشاء مزود خدمة لتخصيص عملية التحقق من كلمة المرور:

قم بإنشاء مزود خدمة جديد, على سبيل المثال WpPasswordServiceProvider.

في هذا المزود, قم بكتابة منطق لمقارنة كلمات المرور المستخدمة في Laravel مع تلك الموجودة في جدول wp_users.

تعديل طريقة login في AuthController:

في وظيفة login, قم أولاً بالحصول على بيانات المستخدم من جدول wp_users باستخدام البريد الإلكتروني المقدم.

استخدم مكتبة mikemclin/laravel-wp-password لمقارنة كلمة المرور المقدمة (غير المشفرة) مع كلمة المرور المشفرة المخزنة في جدول wp_users.

إذا كانت المقارنة صحيحة, قم بإنشاء الرمز المميز (token) وإرجاعه. إذا كانت خاطئة, قم بإرجاع رسالة خطأ.

تسجيل مزود الخدمة:

تأكد من تسجيل مزود الخدمة الجديد WpPasswordServiceProvider في ملف config/app.php الخاص بمشروع Laravel.

هذه الخطوات ستمكنك من استخدام مكتبة mikemclin/laravel-wp-password لمقارنة كلمات المرور بطريقة تتوافق مع تلك المستخدمة في WordPress, وبالتالي تحل مشكلتك مع الاستجابات غير المصرح بها.

انضم إلى النقاش

يمكنك أن تنشر الآن وتسجل لاحقًا. إذا كان لديك حساب، فسجل الدخول الآن لتنشر باسم حسابك.

زائر
أجب على هذا السؤال...

×   لقد أضفت محتوى بخط أو تنسيق مختلف.   Restore formatting

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   جرى استعادة المحتوى السابق..   امسح المحرر

×   You cannot paste images directly. Upload or insert images from URL.

  • إعلانات

  • تابعنا على



×
×
  • أضف...