在没有令牌的 Laravel API 中,经过身份验证的用户为空
Authenticated user is null in Laravel API without token
我正在尝试根据登录的用户 ID 保存我的数据。但我做不到。我正在使用 Postman 和 JWT 身份验证测试我的 api。当我登录时,我会得到一个令牌。我可以使用该令牌针对 user_id
保存数据。但我不想在每次请求时都传递该令牌。
我在这里尝试的是像这样保存 user_id
:
auth()->guard('api')->user();
我的整个控制器方法:
$business = new Business();
$business->business_name = Input::get('business_name');
$business->business_url = Input::get('business_url');
$business->user_id = auth()->guard('api')->user();
$business->save();
$resultArray = ['status' => 1,
'message' => 'Business added!',
'dataArray' => $business
];
当我遇到这个错误时
Integrity constraint violation: 1048 Column 'user_id' cannot be null
当我登录时,我收到如下响应:
{
"token": "eyJ0eXAiOiJKV1QiLCJhbGciOiJIUzI1NiJ9.eyJpc3MiOiJodHRwOi8vMTI3LjAuMC4xOjgwMDAvYXBpL2xvZ2luIiwiaWF0IjoxNTIzOTYxNDEwLCJleHAiOjE1MjM5OTc0MTAsIm5iZiI6MTUyMzk2MTQxMCwianRpIjoiVWppUVVXTENWNjQ4WTJWNyIsInN1YiI6MSwicHJ2IjoiODdlMGFmMWVmOWZkMTU4MTJmZGVjOTcxNTNhMTRlMGIwNDc1NDZhYSJ9.rIjmaEA1HdG64uolyKO9gVX6mqiQ8PN-a2YGO2-Palo",
"currentUser": {
"id": 1,
"name": "Shahzad Hussain",
"email": "shahzadshahg@hotmail.com",
"created_at": "2018-04-17 05:55:55",
"updated_at": "2018-04-17 05:55:55"
}
}
我需要你的帮助,我们将不胜感激!
改变
auth()->guard('api')->user();
到
\Auth::user()->id
或
public function __construct(Guard $auth)
{
$this->currentUser = $auth->user();
}
$business->user_id = $this->currentUser->id;
或
auth()->user()->id
我正在尝试根据登录的用户 ID 保存我的数据。但我做不到。我正在使用 Postman 和 JWT 身份验证测试我的 api。当我登录时,我会得到一个令牌。我可以使用该令牌针对 user_id
保存数据。但我不想在每次请求时都传递该令牌。
我在这里尝试的是像这样保存 user_id
:
auth()->guard('api')->user();
我的整个控制器方法:
$business = new Business();
$business->business_name = Input::get('business_name');
$business->business_url = Input::get('business_url');
$business->user_id = auth()->guard('api')->user();
$business->save();
$resultArray = ['status' => 1,
'message' => 'Business added!',
'dataArray' => $business
];
当我遇到这个错误时
Integrity constraint violation: 1048 Column 'user_id' cannot be null
当我登录时,我收到如下响应:
{
"token": "eyJ0eXAiOiJKV1QiLCJhbGciOiJIUzI1NiJ9.eyJpc3MiOiJodHRwOi8vMTI3LjAuMC4xOjgwMDAvYXBpL2xvZ2luIiwiaWF0IjoxNTIzOTYxNDEwLCJleHAiOjE1MjM5OTc0MTAsIm5iZiI6MTUyMzk2MTQxMCwianRpIjoiVWppUVVXTENWNjQ4WTJWNyIsInN1YiI6MSwicHJ2IjoiODdlMGFmMWVmOWZkMTU4MTJmZGVjOTcxNTNhMTRlMGIwNDc1NDZhYSJ9.rIjmaEA1HdG64uolyKO9gVX6mqiQ8PN-a2YGO2-Palo",
"currentUser": {
"id": 1,
"name": "Shahzad Hussain",
"email": "shahzadshahg@hotmail.com",
"created_at": "2018-04-17 05:55:55",
"updated_at": "2018-04-17 05:55:55"
}
}
我需要你的帮助,我们将不胜感激!
改变
auth()->guard('api')->user();
到
\Auth::user()->id
或
public function __construct(Guard $auth)
{
$this->currentUser = $auth->user();
}
$business->user_id = $this->currentUser->id;
或
auth()->user()->id