0

我的 csrf-token 在我的应用程序布局中呈现为元标记

<meta content="authenticity_token" name="csrf-param">
<meta content="28c5136f4ef175c620ead78cc6d9589b98be0b78" name="csrf-token">

我将 csrf-token 元标记的内容写入配置对象,然后每当我使用 jquery 发布帖子时使用 ajaxPrefilter 添加它。

   $.ajaxPrefilter(function(options, originalOptions, jqXHR){
            if (options['type'].toLowerCase() === "post") {
                console.log("token got called" + configs.csrf_token);
                jqXHR.setRequestHeader('X-CSRFToken', configs.csrf_token);
            }
        });

但是,当我如下发布帖子时

$.post( "/images/external/url", { url: url, 'csrf-param': configs.csrf_token})
    .done(function( data ) {
     console.log( "Data returned: " + data );
    });

我得到一个 403 错误的真实性令牌错误。

帖子中的 csrf-param 是我试图弄清楚这是否与它有关,据我了解,X-CSRFToken 请求标头应该是相关部分?

4

1 回答 1

0

通过连接中的 csrf.js 阅读,我可以看到标头应该是 X-CSRF-Token。

于 2014-08-12T11:42:21.873 回答