شرح صفوف ومحتوى الفقرة
بعد التحقق من صحة بيانات دخول المستخدم، استدع الدالة $user->createToken لتوليد كائن رمز وصول جديد. يجب إرجاع الخاصية النصية plainTextToken للعميل فوراً لأن القيمة الخام غير المشفرة لا تُحفظ أبداً في قاعدة البيانات.
- التحقق من بيانات الدخول (Credential Verification): تحقق من البريد وكلمة المرور عبر دالة Hash::check قبل إصدار رمز الواجهة البرمجية.
- النص الصريح لمرة واحدة (One-Time Plain Text): اقرأ الخاصية plainTextToken من الكائن الناتج لتسليم العميل نص الرمز الخاص به.
- صيغة رأس التفويض (Authorization Header Format): يرسل العميل الرمز في الطلبات اللاحقة داخل رأس الرسالة Authorization: Bearer.
PHP
$user = User::where('email', $req->email)->first();
if (! $user || ! Hash::check($req->pw, $user->pw)) {
return response()->json(['err' => 'Auth'], 401);
}
$tok = $user->createToken('app')->plainTextToken;
return response()->json(['token' => $tok], 201);