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

السؤال

نشر

قمت بإنشاء متحكم LoginController ولكن عند محاولة استخدامه احصل على الخطأ التالي

{ "error": "(Illuminate\Contracts\Container\BindingResolutionException):Target class [LoginController] does not exist." }

 هذا هو كود الملفLoginController

<?php

use App\Http\Controllers\Controller;
use Illuminate\Http\Request;
use Illuminate\Support\Str;
use Illuminate\Support\Facades\Hash;
use App\Models\Usuario;

class LoginController extends Controller
{
    public function login(Request $request)
    {
        $usuario = Usuario::where('login', $request->login)->first();
        if (
            !$usuario ||
            !Hash::check($request->password, $usuario->password)
        ) {
            return response()->json(
                ['error' => 'Credenciales no válidas'],
                401
            );
        } else {
            $usuario->api_token = Str::random(60);
            $usuario->save();
            return response()->json(['token' => $usuario->api_token]);
        }
    }
}

وهذا المسار 

Route::post('login', [LoginController::class, 'login']);

i have tried changing the name, i changed the route to

Route::post('login', [\App\Http\Controllers\Api\LoginController::class, 'login']);

وظهر الخطأ التالي

{ "error": "(Symfony\Component\ErrorHandler\Error\FatalError):Cannot declare class LoginController, because the name is already in use" }

أرجو منكم المساعدة

Recommended Posts

  • 0
نشر
بتاريخ On 12‏/2‏/2023 at 12:58 قال محمد لارافيل:

قمت بإنشاء متحكم LoginController ولكن عند محاولة استخدامه احصل على الخطأ التالي

{ "error": "(Illuminate\Contracts\Container\BindingResolutionException):Target class [LoginController] does not exist." }

 هذا هو كود الملفLoginController

<?php

use App\Http\Controllers\Controller;
use Illuminate\Http\Request;
use Illuminate\Support\Str;
use Illuminate\Support\Facades\Hash;
use App\Models\Usuario;

class LoginController extends Controller
{
    public function login(Request $request)
    {
        $usuario = Usuario::where('login', $request->login)->first();
        if (
            !$usuario ||
            !Hash::check($request->password, $usuario->password)
        ) {
            return response()->json(
                ['error' => 'Credenciales no válidas'],
                401
            );
        } else {
            $usuario->api_token = Str::random(60);
            $usuario->save();
            return response()->json(['token' => $usuario->api_token]);
        }
    }
}

وهذا المسار 

Route::post('login', [LoginController::class, 'login']);

i have tried changing the name, i changed the route to

Route::post('login', [\App\Http\Controllers\Api\LoginController::class, 'login']);

وظهر الخطأ التالي

{ "error": "(Symfony\Component\ErrorHandler\Error\FatalError):Cannot declare class LoginController, because the name is already in use" }

أرجو منكم المساعدة

السلام عليكم اخي يرجى منك وضع namespace في ملف المتحكم 

namespace App\Http\Controllers;

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

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

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

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

  • إعلانات

  • تابعنا على



×
×
  • أضف...