cari

Rumah  >  Soal Jawab  >  teks badan

Sediakan penghalaan untuk pengguna dengan log masuk pilihan dalam Sanctum

<p>Sanctum berkongsi Auth:sanctum middleware dan ia berfungsi. Lihat kod ini: </p> <pre class="brush:php;toolbar:false;">Route::middleware('auth:sanctum')->group(function () { Route::post('/profile', [TestController::class, 'test']); });</pre> <p>Dan kaedah pengawal: </p> <pre class="brush:php;toolbar:false;">ujian fungsi awam() { if (Auth::check()) { kembalikan 'pengguna'; } lain { kembali 'Tetamu'; } }</pre> <p>Masalahnya ialah jika laluan saya menggunakan perisian tengah "auth:sanctum", semuanya berfungsi dengan baik untuk pengguna log masuk, tetapi untuk tetamu saya mendapat ralat "Tidak Dibenarkan". Tanpa menggunakan middleware ini, pengesahan tidak berfungsi dengan betul dan tidak mengenali jika saya log masuk (sentiasa mengembalikan 'Tetamu'). Bagaimanakah saya boleh menyelesaikan masalah ini? Saya ingin menunjukkan kepada pengguna apabila log masuk, jika tidak "Tetamu" perlu ditunjukkan. </p>
P粉741678385P粉741678385466 hari yang lalu509

membalas semua(1)saya akan balas

  • P粉517814372

    P粉5178143722023-08-07 09:40:16

    Jika pengguna menggunakan Sanctum untuk pengesahan, cuba gunakan: auth('sanctum')->check().

    balas
    0
  • Batalbalas