Php 正在重写Laravel会话数据
我遇到了一个奇怪的情况。这是我的密码:Php 正在重写Laravel会话数据,php,session,laravel-5,session-variables,Php,Session,Laravel 5,Session Variables,我遇到了一个奇怪的情况。这是我的密码: public function getHomepage(Request $request){ $data['testimonials'] = $this->getTestimonials(); session()->put('location', 'north_america'); \debugbar()->info('UPDATED SESSION'); session()->save();
public function getHomepage(Request $request){
$data['testimonials'] = $this->getTestimonials();
session()->put('location', 'north_america');
\debugbar()->info('UPDATED SESSION');
session()->save();
return view('site.index')->with('data', $data);
}
public function getGlobalPage(Request $request){
$data['testimonials'] = $this->getTestimonials();
if(session()->has('location')){
session()->forget('location');
}
session()->put('location', 'global');
session()->save();
return view('site.global')->with('data', $data);
}
public function getFeaturesPage(Request $request){
//\debugbar()->info($request);
//echo session()->get('location');
return view('site.features')->with('data', []);
}
下面是发生的情况。当我转到“主页”时,“location”的会话变量返回为“north_america”。那很好
如果我从“主页”页面移动到“全局”页面,“位置”的会话变量返回为“全局”。这也很好
如果我从“全局”页面转到“功能”页面,“位置”的会话变量将返回为“北美”。它没有被设置为null或其他什么,它似乎被重写了。怎么会这样
以下是路线:
Route::get('/', ['as' => 'site.home', 'uses' => 'Site\SiteController@getHomepage']);
Route::get('features', ['as' => 'site.features', 'uses' => 'Site\SiteController@getFeaturesPage']);
Route::get('global', ['as' => 'site.global', 'uses' => 'Site\SiteController@getGlobalPage']);
我明白了。当浏览器试图获取丢失的图像时,它接收到图像的302重定向。这击中了正在更改会话变量的路由,即使浏览器页面没有移动 给我看看你的路线。添加到上面。是否有可能在功能页面之前点击主页?