Php 如何在vue 2应用程序和laravel中创建和匹配CSRF令牌

Php 如何在vue 2应用程序和laravel中创建和匹配CSRF令牌,php,laravel,vuejs2,Php,Laravel,Vuejs2,我没有使用默认情况下laravel提供的vue 2设置。相反,我有两个单独的文件夹用于vue应用程序和laravel api后端。 vue应用程序位于laravel项目文件夹之外 在这种情况下,如何实现CSRF 这就是我想做的,请让我知道这是否会很好地工作,或者有更好的方法来做。。 1.在vue应用程序中使用一些随机长字符串设置cookie。 2.在每个api调用中,确保发送cookie。 3.在laravel后端中,从请求中获取此令牌。 4.从cookie本身获取令牌。 5.匹配这两个cook

我没有使用默认情况下laravel提供的vue 2设置。相反,我有两个单独的文件夹用于vue应用程序和laravel api后端。 vue应用程序位于laravel项目文件夹之外

在这种情况下,如何实现CSRF

这就是我想做的,请让我知道这是否会很好地工作,或者有更好的方法来做。。 1.在vue应用程序中使用一些随机长字符串设置cookie。 2.在每个api调用中,确保发送cookie。 3.在laravel后端中,从请求中获取此令牌。 4.从cookie本身获取令牌。 5.匹配这两个cookie,如果匹配,则假定CSRF有效


提前谢谢

我很困惑,但我通过询问社区找到了答案

只要看一下,框架将
XSRF-TOKEN
存储为cookie的一个键。您需要做的是从cookie中获取
XSRF-TOKEN
,然后使用
X-XSRF-TOKEN:key_from_cookie
,将令牌设置为标头的一部分,Laravel将像往常一样使用CSRF令牌

illumb/Foundation/Http/Middleware/VerifyCsrfToken.php
/**
 * Get the CSRF token from the request.
 *
 * @param  \Illuminate\Http\Request  $request
 * @return string
 */
protected function getTokenFromRequest($request)
{
    $token = $request->input('_token') ?: $request->header('X-CSRF-TOKEN');
    if (! $token && $header = $request->header('X-XSRF-TOKEN')) {
        $token = $this->encrypter->decrypt($header);
    }
    return $token;
}

我也有同样的问题。如果将Laravel和Vuejs作为两个独立的项目使用。如何将令牌传递给另一个令牌?