Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/jquery/71.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Jquery 使用csrf的userfrosting post json_Jquery_Json_Ajax_Csrf_Userfrosting - Fatal编程技术网

Jquery 使用csrf的userfrosting post json

Jquery 使用csrf的userfrosting post json,jquery,json,ajax,csrf,userfrosting,Jquery,Json,Ajax,Csrf,Userfrosting,我正在将一个web应用程序移植到userfrosting,我需要发布一个JSON数据对象。我正在努力使用csrf代币 以下代码在userfrosting中与CSRF配合使用效果良好 var postdata = { field1: 1, filed2: "data", csrf_token: $("meta[name=csrf_token]").attr("content") }; $.ajax( { type: "POST", ur

我正在将一个web应用程序移植到userfrosting,我需要发布一个JSON数据对象。我正在努力使用csrf代币

以下代码在userfrosting中与CSRF配合使用效果良好

    var postdata = {
      field1: 1,
      filed2: "data",
      csrf_token: $("meta[name=csrf_token]").attr("content")
    };

    $.ajax( { type: "POST", url: url, data: postdata, dataType: "json",
      success: ...,
      error: ...
    });
但是,我需要将数据发布为JSON,并希望使用以下内容

    var postdata = {
      field1: 1,
      filed2: "data",
    };

    $.ajax( { type: "POST", url: url,
              data: JSON.stringify( postdata ), dataType: "json",
              contentType: "application/json; charset=utf-8",
      success: ...,
      error: ...
    });

如何添加csrf_令牌以使其在userfrosting中工作?

当您将其包括在
postdata
对象中时,它是否不起作用,就像您在第一个工作示例中所做的那样?谢谢。是的,我确实尝试在JSON数据中添加令牌,但没有成功。看起来userfrosting框架不会从JSON post中获取令牌。这可能是userfrosting的一个限制。如果我没有找到替代的解决方案,我将不得不更新我的slimhook并以不同的方式解析帖子。我希望我不需要这样做。当然,删除CSRF检查总是有一个可选(坏)选项。您能否使用浏览器的控制台工具检查请求,并向我们显示在
POST
中实际提交的数据?