我使用Laravel创建了一个网店,一切顺利,直到最近我开始获得TokenMismatchExceptions。 用户可以毫无问题地登录。只要用户尝试将项目添加到购物车,就会出现此问题。我没有真正改变页面上的任何内容,似乎这开始是由它自己发生的。我对服务器做的唯一事情是清除缓存。这会导致问题发生吗?
我的所有控制器都以:
开头public function __construct() {
parent::__construct();
$this->beforeFilter('csrf', array('on'=>'post'));
}
我的会话配置设置如下:
/*
|--------------------------------------------------------------------------
| Default Session Driver
|--------------------------------------------------------------------------
|
| This option controls the default session "driver" that will be used on
| requests. By default, we will use the lightweight native driver but
| you may specify any of the other wonderful drivers provided here.
|
| Supported: "file", "cookie", "database", "apc",
| "memcached", "redis", "array"
|
*/
'driver' => 'file',
/*
|--------------------------------------------------------------------------
| Session Lifetime
|--------------------------------------------------------------------------
|
| Here you may specify the number of minutes that you wish the session
| to be allowed to remain idle before it expires. If you want them
| to immediately expire on the browser closing, set that option.
|
*/
'lifetime' => 15,
'expire_on_close' => false,
我使用csrf过滤器错了吗?我似乎找不到解决这个问题的方法。
CNC中
我尝试从控制器中取出我的csrf过滤器,现在用户在向购物车添加商品时会自动注销(我猜这是问题所在)。