<ruby id="bdb3f"></ruby>

    <p id="bdb3f"><cite id="bdb3f"></cite></p>

      <p id="bdb3f"><cite id="bdb3f"><th id="bdb3f"></th></cite></p><p id="bdb3f"></p>
        <p id="bdb3f"><cite id="bdb3f"></cite></p>

          <pre id="bdb3f"></pre>
          <pre id="bdb3f"><del id="bdb3f"><thead id="bdb3f"></thead></del></pre>

          <ruby id="bdb3f"><mark id="bdb3f"></mark></ruby><ruby id="bdb3f"></ruby>
          <pre id="bdb3f"><pre id="bdb3f"><mark id="bdb3f"></mark></pre></pre><output id="bdb3f"></output><p id="bdb3f"></p><p id="bdb3f"></p>

          <pre id="bdb3f"><del id="bdb3f"><progress id="bdb3f"></progress></del></pre>

                <ruby id="bdb3f"></ruby>

                ??碼云GVP開源項目 12k star Uniapp+ElementUI 功能強大 支持多語言、二開方便! 廣告
                * * * * * [TOC] ## 簡介 Laravel 提供了簡單的方法使你的應用免受?[跨站請求偽造](https://en.wikipedia.org/wiki/Cross-site_request_forgery)?(CSRF) 的襲擊。跨站請求偽造是一種惡意的攻擊,它憑借已通過身份驗證的用戶身份來運行未經過授權的命令。 Laravel 為每個活躍用戶的 Session 自動生成一個 CSRF 令牌。該令牌用來核實應用接收到的請求是通過身份驗證的用戶出于本意發送的。 任何情況下在你的應用程序中定義 HTML 表單時都應該包含 CSRF 令牌隱藏域,這樣 CSRF 保護中間件才可以驗證請求。輔助函數?`csrf_field`?可以用來生成令牌字段: ~~~ <form method="POST" action="/profile"> {{ csrf_field() }} ... </form> ~~~ 包含在?`web`?中間件組里的?`VerifyCsrfToken`?[中間件](中間件.md)會自動驗證請求里的令牌?`token`?與 Session 中存儲的令牌?`token`?是否匹配。 ## CSRF 令牌和 Vue 如果你使用?[Vue.js](https://vuejs.org/)?框架,沒有?`make:auth`?命令提供的身份驗證過渡,那么你需要在你應用的主要布局中手動定義一個?`Laravel`?Javascript對象。這個對象會指定 Vue 在做請求時需要的 CSRF 令牌: ~~~ <script> window.Laravel = {!! json_encode([ 'csrfToken' => csrf_token(), ]) !!}; </script> ~~~ ## CSRF 白名單 有時候你可能希望設置一組并不需要 CSRF 保護的 URI。例如,如果你正在使用?[Stripe](https://stripe.com/)?處理付款并使用了他們的 webhook 系統,你會需要將 Stripe webhook 處理的路由排除在 CSRF 保護外,因為 Stripe 并不知道發送給你路由的 CSRF 令牌是什么。 一般地,你可以把這類路由放到?`web`?中間件外,因為?`RouteServiceProvider`?適用于?`routes/web.php`?中的所有路由。不過如果一定要這么做,你也可以將這類 URI 添加到?`VerifyCsrfToken`?中間件中的?`$except`?屬性來排除對這類路由的 CSRF 保護: ~~~ <?php namespace App\Http\Middleware; use Illuminate\Foundation\Http\Middleware\VerifyCsrfToken as BaseVerifier; class VerifyCsrfToken extends BaseVerifier { /** * 這些 URI 會被免除 CSRF 驗證 * * @var array */ protected $except = [ 'stripe/*', ]; } ~~~ ## X-CSRF-TOKEN 除了檢查 POST 參數中的 CSRF token 外,`VerifyCsrfToken`?中間件還會檢查?`X-CSRF-TOKEN`?請求頭。你可以將令牌保存在 HTML?`meta`?標簽中: ~~~ <meta name="csrf-token" content="{{ csrf_token() }}"> ~~~ 一旦創建了?`meta`?標簽,你就可以使用類似 jQuery 的庫將令牌自動添加到所有請求的頭信息中。這可以為您基于 AJAX 的應用提供簡單、方便的 CSRF 保護。 ~~~ $.ajaxSetup({ headers: { 'X-CSRF-TOKEN': $('meta[name="csrf-token"]').attr('content') } }); ~~~ ## X-XSRF-TOKEN Laravel 將當前的 CSRF 令牌存儲在由框架生成的每個響應中包含的一個`XSRF-TOKEN`?cookie 中。你可以使用該令牌的值來設置 X-XSRF-TOKEN 請求頭信息。 這個 cookie 作為頭信息發送主要是為了方便,因為一些 JavaScript 框架,如 Angular,會自動將其值添加到?`X-XSRF-TOKEN`?頭中.
                  <ruby id="bdb3f"></ruby>

                  <p id="bdb3f"><cite id="bdb3f"></cite></p>

                    <p id="bdb3f"><cite id="bdb3f"><th id="bdb3f"></th></cite></p><p id="bdb3f"></p>
                      <p id="bdb3f"><cite id="bdb3f"></cite></p>

                        <pre id="bdb3f"></pre>
                        <pre id="bdb3f"><del id="bdb3f"><thead id="bdb3f"></thead></del></pre>

                        <ruby id="bdb3f"><mark id="bdb3f"></mark></ruby><ruby id="bdb3f"></ruby>
                        <pre id="bdb3f"><pre id="bdb3f"><mark id="bdb3f"></mark></pre></pre><output id="bdb3f"></output><p id="bdb3f"></p><p id="bdb3f"></p>

                        <pre id="bdb3f"><del id="bdb3f"><progress id="bdb3f"></progress></del></pre>

                              <ruby id="bdb3f"></ruby>

                              哎呀哎呀视频在线观看