gpt4 book ai didi

php - session 不在 Vue.js 和 Laravel 中存储数据

转载 作者:搜寻专家 更新时间:2023-10-30 22:24:41 35 4
gpt4 key购买 nike

我试图在每次从 vue.js 调用 AJAX 时将数据存储到 Laravel session 中。

我想使用 session 在 Laravel 购物车中添加产品,但它不存储任何类型的 session 数据。我还添加了网络中间件,但没有成功。

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));
}

最佳答案

你所有的路由都在 api 中间件中注册,如果你检查 app/Http/Kernel.php 文件,你会看到它没有 StartSession 中间件已注册。因此,您必须先启动 session 才能将数据保存到 session 中。

enter image description here

关于php - session 不在 Vue.js 和 Laravel 中存储数据,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/54860100/

35 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com