Laravel 5.3对写在api.php和web.php中路由处理上有什么不同?
我是想知道,如果用模板渲染的方式弄网页,其中也会用到ajax请求,那这个ajax请求的路由放在api.php还是web.php中比较好?
认证高级PHP讲师
根据你的描述明显应该是放在 web.php 中。
因为你只是普通的 web 项目,web.php 中的路由使用了 web middleware group 。
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, \Illuminate\Routing\Middleware\SubstituteBindings::class, ], 'api' => [ 'throttle:60,1', 'bindings', ], ];
如果你把 ajax 的路由放在 api.php 中,没有csrf 保护,很容易造成程序上的漏洞,公共资源请求除外。
api.php 配合Laravel passport 来使用提供 API 服务。
本质上是一样的.
你自己觉得放哪, 就放哪.
我觉得放web.php里面好. 因为看你的描述, 不像是api.
根据你的描述明显应该是放在 web.php 中。
因为你只是普通的 web 项目,web.php 中的路由使用了 web middleware group 。
如果你把 ajax 的路由放在 api.php 中,没有csrf 保护,很容易造成程序上的漏洞,公共资源请求除外。
api.php 配合Laravel passport 来使用提供 API 服务。
本质上是一样的.
你自己觉得放哪, 就放哪.
我觉得放web.php里面好. 因为看你的描述, 不像是api.