背景知识:
- 最近工作上使用了laravel框架,这个常见错误系列会记录我在学习和使用laravel时遇到的一些问题的场景和解决方法。
- laravel文档:传送门
错误场景:我在web.php文件新建了一个路由,希望前端调用这个api新建一条追评:
在使用postman进行测试时,会报如下一个错误:
解放方法:查了文档发现,写在web.php文件中的路由都会经过一个叫做web的中间件组,可以在Http目录下的Kernel.php文件中查看:(注意:默认情况下web对应的值不是如下显示的,因为我自己改了,不要纠结)
我们可以看到一个中间件: \App\Http\Middleware\VerifyCsrfToken::class,就是因为这个中间件对请求进行了拦截,主要原因是没有传递csrf值,解决方法是设置 /append_comment路由不进行csrf验证:
class VerifyCsrfToken extends Middleware
{
/**
* The URIs that should be excluded from CSRF verification.
*
* @var array
*/
protected $except = [
'append_comment'
];
}
如果要想具体了解这个中间件的,可以查看文档:laravel的csrf详解