gimana sih caranya menggunakan route API.php pada laravel

sesuai judul pertanyaan gimana sih caranya menggunakan route API.php pada laravel 5.6?

saya sebelumnya telah membuat 1 buah auth menggunakan php artisan auth dan terdapat 2 buah auth yaitu admin dan user yang memiliki guard auth seperti ini :


    'defaults' => [
        'guard' => 'web',
        'passwords' => 'users',
    ],

  'guards' => [
        'web' => [
            'driver' => 'session',
            'provider' => 'users',
        ],

        'api' => [
            'driver' => 'token',
            'provider' => 'users',
        ],
        'admin' => [
            'driver' => 'session',
            'provider' => 'admins',
        ],

        'admin-api' => [
            'driver' => 'token',
            'provider' => 'admins',
        ],
    ],

    'providers' => [
        'users' => [
            'driver' => 'eloquent',
            'model' => App\User::class,
        ],
        'admins' => [
            'driver' => 'eloquent',
            'model' => App\Admin::class,
        ],

        // 'users' => [
        //     'driver' => 'database',
        //     'table' => 'users',
        // ],
    ],

  'passwords' => [
        'users' => [
            'provider' => 'users',
            'table' => 'password_resets',
            'expire' => 15,
        ],
        'admins' => [
            'provider' => 'admins',
            'table' => 'password_resets',
            'expire' => 15,
        ],
    ],

saya mencoba menggunakan route API.php dengan mengakses seperti ini :

   Route::get('product_index_vue','MasterAdmin\ProductController@productData');

tetapi ketika saya mengaksesnya saya diredirect kembalik ke halaman login admin padahal sebelumnya saya telah berhasil login. hal ini karena pada controller ProductController terdapat middleware :

 public function __construct()
  {
    $this->middleware('auth:admin');
  }

Login Admin :

  public function login(Request $request)
    {

      $this->validate($request,[
        'email'=>'required|email',
        'password'=>'required|min:5',
      ]);

      $credential =[
        'email'=>$request->email,
        'password'=>$request->password
      ];

      if (Auth::guard('admin')->attempt($credential,$request->remember)) {
        return redirect()->intended(route('admin.home'));
      }

      return redirect()->back()->withInput($request->only('email','remember'));

    }
avatar farisdewantoro
@farisdewantoro

119 Kontribusi 16 Poin

Diperbarui 5 tahun yang lalu

1 Jawaban:

<pre> &lt;?php

use Illuminate\Http\Request;

/* |-------------------------------------------------------------------------- | API Routes |-------------------------------------------------------------------------- | | Here is where you can register API routes for your application. These | routes are loaded by the RouteServiceProvider within a group which | is assigned the "api" middleware group. Enjoy building your API! | */

Route::get('/user', function (Request $request) { return $request-&gt;user(); })-&gt;middleware('auth:api'); </pre>

avatar Nitomi
@Nitomi

14 Kontribusi 4 Poin

Dipost 5 tahun yang lalu

Login untuk ikut Jawaban