当我使用 api.php 的路由在控制器中使用 auth()->user()->id 时,它不起作用

Rah*_*kya 2 php laravel laravel-4 laravel-5 laravel-5.1

public function store(Request $request)
    {
        $booking = ($request->isMethod('put')) ? Booking::findOrFail($request->booking_id) : new Booking;
        $booking->checkIn = $request->checkIn;
        $booking->checkOut = $request->checkOut;
        $booking->room_id = $request->room_id;
        $booking->user_id = auth()->user()->id;//not working

        if($booking->save()){
            return new BookingResource($booking);
        }
    }

Route::put('/booking','BookingsController@store');//api.php
Run Code Online (Sandbox Code Playgroud)

这里 auth()->user()->id 不起作用,但它的工作发现我是否使用相同的代码,但在 paths/web.php 中使用路由代码

Jig*_*sar 5

在 auth 中传递保护参数,就像这样使用..

1. auth('api')->user();  //if u are using api guard ...(web guard)
2. $request->user('api');     //by reqeust class
3. Auth::guard('api')->user()   //using Auth facade
Run Code Online (Sandbox Code Playgroud)