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

السؤال

نشر

عند استخدامي للدالة التالية:

Auth::user()->createToken('Access Token')->accessToken;

لا يتم التعرّف على الدالة createToken ويظهر لدي الخطأ التالي:

Undefined method 'createToken'

وهذا هو الكود:

<?php

namespace App\Controller\API;

use App\Http\Controllers\Controller;
use Illuminate\Support\Facades\Auth;
use App\Http\Resources\User as UserResource;

class LoginController extends Controller {

public function _construct(){

$this->middleware('auth.basic.once');

}

public function login(){

	$accessToken = Auth::user()->createToken('Access Token')->accessToken;

return Response('User' => new UserResource(Auth::user()), 'Access Token' => $accessToken);
}

}

Recommended Posts

  • 0
نشر

يرجى التأكد من أنك قمت بتثبيت حزمة passport عن طريق الأمر التالي 

composer require laravel/passport

ثم تأكد من أنك قمت بإنشاء مفاتيح Personal Access, Password Grant عن طريق الأمر التالي 

php artisan passport:install

ثم في ملف User.php المودل تضمن التالي 

use Laravel\Passport\HasApiTokens;
use HasApiTokens;

وفي ملف auth.php في guards تضع في مصفوفة api 

'api' => [
	'driver' => 'passport',
	'provider' => 'users',
],

 

  • 0
نشر

نظرًا لأن   ()Auth::user   يعيد نموذج المستخدم الخاطئ ،App\User ، يجب عليك التحقق من مكون المصادقة  auth configuration .  في مصفوفة الموفرين providers

غير النمودج App\User إلى App\Models\User

'providers' => [
    'users' => [
        'driver' => 'eloquent',
        // 'model' => App\User::class,
        'model' => App\Models\User::class,
    ],
    ...
],

 

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

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

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

×   لقد أضفت محتوى بخط أو تنسيق مختلف.   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.

  • إعلانات

  • تابعنا على



×
×
  • أضف...