laravel 5.1 to 5.2 的问题。

2016-01-17 09:10:00 +08:00
 KIDJourney

laravel 在 5.2 中加入了 web middleware ,将 session , csrf , cookie 等等都放到了 web middlewar 中,但是我在通过官方的升级手册从 5.1 升级到 5.2 之后在 middleware 中并没有找到 web 中间件,直接指定 web 中间件也会报错。但是我直接使用 session 和 cookie 又不会出问题。

请问是我升级的过程中哪里出了问题吗?

我的 Route

Route::get('/', "WelcomeController@index");
Route::get('justsignin', WelcomeController@requestLogin');
Route::get('debug', 'WelcomeController@debug');
Route::get('help', 'WelcomeController@help');

我的 composer.json

"require": {
"php": ">=5.5.9",
"laravel/framework": "5.2.*",
"laravelcollective/html": "^5.2",
"barryvdh/laravel-ide-helper": "^2.1"
},
"require-dev": {
"mockery/mockery": "0.9.*",
"phpunit/phpunit": "~4.0",
"symfony/css-selector": "2.8.*|3.0.*",
"symfony/dom-crawler": "2.8.*|3.0.*",
"fzaninotto/faker": "~1.0"
},

3204 次点击
所在节点    PHP
5 条回复
imydou
2016-01-17 09:39:39 +08:00
```
Route::group(['middleware' => ['web']], function () {
/*

*/
});
```
KIDJourney
2016-01-17 10:20:46 +08:00
@imydou 我没有这个中间件,而且我在使用 session 和 csrf 的时候没有这个中间件也可以正常运行。
ljmready
2016-01-17 14:42:53 +08:00
web 中间件是在这里指定的 app/Http/Kernel.php

protected $middlewareGroups = [
'web' => [
\App\Http\Middleware\EncryptCookies::class,
\Illuminate\Cookie\Middleware\AddQueuedCookiesToResponse::class,
\Illuminate\Session\Middleware\StartSession::class,
\Illuminate\View\Middleware\ShareErrorsFromSession::class,
\App\Http\Middleware\VerifyCsrfToken::class,
],
];
确保这里有 web ,和对应的中间件文件是否有?
KIDJourney
2016-01-17 14:52:25 +08:00
@ljmready 明白了!多谢你了。
ljmready
2016-01-17 19:05:42 +08:00
@KIDJourney 不客气~很高兴能帮到你

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/251300

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX