Я создаю API для разработчика Android, чтобы он мог показывать заказы, сделанные пользователем. Мой код заставляет любого пользователя показывать любой продукт, а я хочу только показывать заказы, сделанные аутентифицированным пользователем
Я защитил маршрут так:
Route::middleware('auth:api')->group( function () {
Route::resource('orders', 'API\OrdersController');
});
и я использую следующие заголовки по запросу:
'headers' => [ 'Accept' => 'application/json', 'Authorization' => 'Bearer '.$accessToken,]
вот код контроллера метода show ($ id)
public function show($id)
{
$user = Auth::id();
$Orders = Orders::where('id',$id)->where('order_shopper_id', $user)->get();
if (is_null($Orders) || empty($Orders)) {
return $this->sendError('Orders not found.');
}
return $this->sendResponse($Orders->toArray(), 'Orders retrieved successfully.');
}
это работает, но когда, например, я пытаюсь получить доступ к номеру заказа "2", и аутентифицированный пользователь не создал этот заказ, он все равно возвращает успех с пустыми данными.
Все, что я хочу, это "Выберите номер заказа (#), но убедитесь, что вошедший в систему пользователь создал этот заказ, а не кто-то другой, если не возвращает unAuthenticated"
Заранее спасибо.