@Vova135798

Почему не работает сессия в postman?

При проверке сайта через postman, мне выдает ошибку:

RuntimeException: Session store not set on request. in file /Users/vladimir/Desktop/shop/vendor/laravel/framework/src/Illuminate/Http/Request.php on line 524.

Раньше все роуты были в файле web, и работали через blade без ошибок. После перехода на api, все функции с сессиями перестали работать не только в postman, но и в vue.js.

Route::group([
    'prefix' => 'cart',
    'as' => 'cart.',
], function () {
    Route::get('', [App\Http\Controllers\CartController::class, 'index'])->name('index');
    Route::post('/add', [App\Http\Controllers\CartController::class, 'addToCart'])->name('add');
    Route::post('/remove', [App\Http\Controllers\CartController::class, 'remove'])->name('remove');
    Route::post('/addQuantity', [App\Http\Controllers\CartController::class, 'addQuantity'])->name('addQuantity');
    Route::post('/removeQuantity', [App\Http\Controllers\CartController::class, 'removeQuantity'])->name('removeQuantity');
});

class CartController extends Controller
{
    public function index(Request $request)
    {
        $cart = session()->get('cart');
        return $cart;
    }

    public function addToCart(Request $request)
    {
        $id = $request->id;
        $product = Product::select('id', "title", "price")->findOrFail($id);
        $cart = session()->get('cart');
        if (!empty($cart[$id])) {
            $cart[$id]['quantity']++;
        } else {
            $cart[$id] = [
                'id' => $product->id,
                "title" => $product->title,
                "quantity" => 1,
                "price" => $product->price,
            ];
        }

        $request->session()->put('cart', $cart);
        return $cart;
    }
  • Вопрос задан
  • 301 просмотр
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы