dongsimang4036 2019-02-26 18:06 采纳率: 100%
浏览 92

Laravel 5.7 CSRF中间件

According to Laravel 5.7 Docs

"The CSRF middleware is automatically disabled when running tests."

But I have the following Test

public function testUserLoginSuccesfully()
{
    $data = ['email' => 'test@user.com' , 'password' => bcrypt('test12345')];
    $csrf = csrf_token();

    $response = $this->withHeaders(['_token' => $csrf])
    ->post('/login',$data);

    $response->assertStatus(302)->assertRedirect('/home');

}

In order to work properly I have to disable csrf protection in the VerifyCsrfToken.php:

protected $except = [
    //
    '/login','/register'
];

If don't modify this property I'm getting a http 419 error. I don't know what I'm missing or how can I disable csrf only for testing.

Thanks in advance.

  • 写回答

0条回答 默认 最新

    报告相同问题?

    悬赏问题

    • ¥15 Vue3 大型图片数据拖动排序
    • ¥15 划分vlan后不通了
    • ¥15 GDI处理通道视频时总是带有白色锯齿
    • ¥20 用雷电模拟器安装百达屋apk一直闪退
    • ¥15 算能科技20240506咨询(拒绝大模型回答)
    • ¥15 自适应 AR 模型 参数估计Matlab程序
    • ¥100 角动量包络面如何用MATLAB绘制
    • ¥15 merge函数占用内存过大
    • ¥15 使用EMD去噪处理RML2016数据集时候的原理
    • ¥15 神经网络预测均方误差很小 但是图像上看着差别太大