Сессия не хранит данные в Vue.js & Laravel - PullRequest
0 голосов
/ 25 февраля 2019

Я пытаюсь сохранить данные в сеансе Laravel при каждом вызове AJAX из vue.js.

Я хочу добавить товар в корзину Laravel, используя сеанс, но он не хранит никаких данных сеанса.Я также добавил веб-связующее ПО, но не повезло.

api.php

<?php
    Route::group(['namespace' => 'Api'],function(){
        Route::resource('product','ProductController');
        Route::post('add-to-cart','ProductController@addToCart');
    });

ProductController.php

<?php
    public function addToCart(Request $request){
    $product = $request->all();

    $cart = Session::get('cart');
    $cart[$product['id']] = $product;
    Session::push('cart', $cart);

    return Response::json(['success' => true, 'cart_items' => Session::get('cart')]);
}

ProductListComponene.vue

addToCartProduct(product){
    fetch('api/add-to-cart',{
        method: 'post',
        body:JSON.stringify(product),
        headers:{
            'content-type':'application/json'
        }
    })
    .then(res => res.json())
    .then(res => {
        console.log(res);
    })
    .catch(err => console.log(err));
}                 

1 Ответ

0 голосов
/ 25 февраля 2019

Все ваши маршруты зарегистрированы в промежуточном программном обеспечении api, и если вы проверите файл app/Http/Kernel.php, вы увидите, что в нем не зарегистрировано StartSession промежуточного программного обеспечения.Таким образом, вы должны начать сеанс сначала, чтобы сохранить данные в сеансе.

enter image description here

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...