Laravel 8 白名單

2021-07-16 17:59 更新

有時候你可能希望設(shè)置一組不需要的 CSRF 保護(hù)的 URL 。例如,如果你正在使用 Stripe 處理付款并使用了他們的 webhook 系統(tǒng),你會需要從 CSRF 的保護(hù)中排除 Stripe webhook 處理程序路由,因為 Stripe 并不會給你的路由發(fā)送 CSRF 令牌。

典型做法,你可以把這類路由放在 routes/web.php 外,因為 RouteServiceProviderweb 中間件適用于該文件中的所有路由。不過,你也可以通過將這類 URL 添加到 VerifyCsrfToken 中間件的 $except 屬性來排除對這類路由的 CSRF 保護(hù),如下所示:

<?php

namespace App\Http\Middleware;

use Illuminate\Foundation\Http\Middleware\VerifyCsrfToken as Middleware;

class VerifyCsrfToken extends Middleware
{
    /**
     * 從 CSRF 驗證中排除的 URI
     *
     * @var array
     */
    protected $except = [
        'stripe/*',
        'http://example.com/foo/bar',
        'http://example.com/foo/*',
    ];
}

技巧:當(dāng) 運(yùn)行測試 時, CSRF 中間件會自動禁用。


以上內(nèi)容是否對您有幫助:
在線筆記
App下載
App下載

掃描二維碼

下載編程獅App

公眾號
微信公眾號

編程獅公眾號