php - auth()->user()->id 在 Controller 中使用到 api.php 的路由时无法正常工作

标签 php laravel laravel-5 laravel-4 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

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

最佳答案

像那样在 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

关于php - auth()->user()->id 在 Controller 中使用到 api.php 的路由时无法正常工作,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/53347728/

相关文章:

javascript - 在发布之前在多维元素内循环

php - Laravel 什么是守卫?

php - 防止 Laravel 向数据透视表添加多条记录

mysql - 使用 eloquent 连接 laravel 中的两个表

php - 如何简化下表并优化?

javascript - 使用js ajax从html发布到php帖子

javascript - 将 randomID 函数从 JS 移植到 PHP

php - 找不到基表或 View : 1146 Table Laravel 5

Laravel 代客不工作

mongodb - Laravel 关闭 mysql/mongodb 连接