【发布时间】:2019-12-16 07:29:04
【问题描述】:
我正在使用 smartins/passport-multiauth 护照,在 PostMan 中我做了一个发布请求,通过请求发送此数据; 这个想法是当用户提交订单时,该用户的令牌将通过请求传递..如何获取该令牌的 user_id 以便将其存储在 Orders 表中?
{
"place_id": 2,
"token": "b715d124c04125acae2dda144021724b3266a361785f29883105c138d23ecdb0da1fd48de719039a",
"items": [
{
"id": 4,
"quantity": 5
},
{
"id": 5,
"quantity": 3
}
]
}
public function new_order(Request $request)
{
$token= auth('api')->user();
$order = Order::create([
'place_id'=>$request->place_id,
'code_id'=>$request->code_id,
'user_id'=>$token
]);
$items = $request->input('items', []);
foreach ($items as $item)
{
ItemOrder::create([
'order_id'=>$order->id,
'item_id'=>$item['id'] ,
'quantity'=>$item['quantity'] ,
]);
}
return response()->json([
'status' => (bool)$order,
'order' => $order,
'message' => $order ? 'Your order has been sent !' : 'There is some error!'
]);
//ToDo:notificaion to restaurant
}
【问题讨论】:
-
Auth::guard('api')->user()->id或auth('api')->user()->id -
@DilipHirapara 我收到此错误:“尝试获取非对象的属性 'id'”
-
传入 header Authorization=Bearer {your_token} like this Authorization =Bearer b715d124c04125acae2dda144021724b3266a361785f29883105c138d23ecdb0da1fd48de719039a
标签: php laravel laravel-passport