这段程序是咋回事?

Laravel的一段程序

 

Illuminate\Foundation\Http\Middleware\VerifyCsrfToken

 

    /**
     * Determine if the session and input CSRF tokens match.
     *
     * @param  \Illuminate\Http\Request  $request
     * @return bool
     */
    protected function tokensMatch($request)
    {
        $sessionToken = $request->session()->token();

        $token = $request->input('_token') ?: $request->header('X-CSRF-TOKEN');

        if (! $token && $header = $request->header('X-XSRF-TOKEN')) {
            $token = $this->encrypter->decrypt($header);
        }

        if (! is_string($sessionToken) || ! is_string($token)) {
            return false;
        }

        return hash_equals((string) $request->session()->token(), (string) $token);
    }

 完全理解不能(我指的是写法,不是功能)。

你可能感兴趣的:(PHP,laravel,CSRF)