在VerifyCsrfToken.php第46行获取TokenMismatchException:使用Elfinder上传图像时

时间:2015-09-30 18:00:17

标签: laravel-5 ckeditor elfinder

我使用Laravel 5和CKEditor以及Elfinder在CMS中创建一个WYSIWYG编辑器。我已经启动并运行了文件浏览器,但我无法将文件上传工作。我有上传选项卡,但当我单击发送到服务器时,我得到以下内容:

TokenMismatchException in VerifyCsrfToken.php line 46:

为什么会发生这种情况?

更新

我从Kernel.php中删除了verifyCsrf,后者专门删除了该错误。它做了,抛出一个新的例外,但我将保存它以用于未来的问题。最终,我不想为了图像上传而全面禁用csrf。所以我想我可以排除路线:

/app/Http/Middleware/VerifyCsrfToken.php:

class VerifyCsrfToken extends BaseVerifier {

    /**
     * The URIs that should be excluded from CSRF verification.
     *
     * @var array
     */
    protected $except = [
        'elfinder/*'
    ];

我假设所有elfinder路线都在elfinder前缀下运行,尽管我没有任何证据支持这一点。上载过程中运行的路由文档不太清楚。 Welp ....这也不起作用。

所以后续:这是正确的方向吗?有人知道在Elfinder上运行的确切路线吗?

更新2

使用此article我创建了自己的VerifyCsrfTokenCustom类,并且只能在Elfinder上禁用CSRF。对于获取/发布路由似乎存在路由问题,但我认为这应该是一个新问题。

1 个答案:

答案 0 :(得分:1)

这是CSRF保护。您可以将令牌传递给Ckeditor,也可以app\Http\Kernel.phpVerifyCsrfToken属性中使用$middleware注释,这样您就可以关闭CSRF保护。