如何在Dropzone上传请求的标头中包含CSRF令牌?

罗汉

我正在开发一个单页应用程序,并且正在将Laravel 5用于Web服务。

所有表单都是异步提交的,我在它们上面使用了beforeSend来附加CSRF令牌,该令牌是从meta标签中获取的,如下所示:

$.ajax({
    url: '/whatever/route',
    type: 'POST',
    dataType: 'JSON',
    data: $('form#whatever-form').serialize(),
    beforeSend: function(request) {
        return request.setRequestHeader('X-CSRF-Token', $("meta[name='token']").attr('content'));
    },
    success: function(response){
        rivets.bind($('#whateverTag'), {whateverData: response});
    },
    error: function(response){
    }
});

我所有的表单都可以正常工作,但dropzone上传不起作用。它给了我一个TokenMismatchException例外。这是我的Dropzone代码,用于更新个人资料照片:

$("#mydropzone").dropzone({
    url: "/profile/update-photo",
    addRemoveLinks : true,
    maxFilesize: 5,
    dictDefaultMessage: '<span class="text-center"><span class="font-lg visible-xs-block visible-sm-block visible-lg-block"><span class="font-lg"><i class="fa fa-caret-right text-danger"></i> Drop files <span class="font-xs">to upload</span></span><span>&nbsp&nbsp<h4 class="display-inline"> (Or Click)</h4></span>',
    dictResponseError: 'Error uploading file!'
});

我也尝试过将它beforeSend放在这里:

$("#mydropzone").dropzone({
    url: "/profile/update-photo",
    addRemoveLinks : true,
    maxFilesize: 5,
    dictDefaultMessage: '<span class="text-center"><span class="font-lg visible-xs-block visible-sm-block visible-lg-block"><span class="font-lg"><i class="fa fa-caret-right text-danger"></i> Drop files <span class="font-xs">to upload</span></span><span>&nbsp&nbsp<h4 class="display-inline"> (Or Click)</h4></span>',
    dictResponseError: 'Error uploading file!',
    beforeSend: function(request) {
        return request.setRequestHeader('X-CSRF-Token', $("meta[name='token']").attr('content'));
    },
});

我还试图将全局ajaxSetup放在主文件中,如下所示:

$.ajaxSetup({
    headers: {
        'X-CSRF-TOKEN': $('meta[name="token"]').attr('content')
    }
});

它仍然无法正常工作。我究竟做错了什么?如何在带有dropzone上传的标头中传递CSRF令牌,以免发生异常?

罗汉

好的,这段代码现在可以正常工作了:

$("#mydropzone").dropzone({
    url: "/profile/update-photo",
    addRemoveLinks : true,
    maxFilesize: 5,
    dictDefaultMessage: '<span class="text-center"><span class="font-lg visible-xs-block visible-sm-block visible-lg-block"><span class="font-lg"><i class="fa fa-caret-right text-danger"></i> Drop files <span class="font-xs">to upload</span></span><span>&nbsp&nbsp<h4 class="display-inline"> (Or Click)</h4></span>',
    dictResponseError: 'Error uploading file!',
    headers: {
        'X-CSRF-TOKEN': $('meta[name="token"]').attr('content')
    }
});

因此,基本上我需要X-CSRFToken在Dropzone请求的标头中添加现在就像魅力一样工作。

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

如何在Ajax POST请求中设置标头以包含CSRF令牌

来自分类Dev

如何在 Python 请求标头中包含列表

来自分类Dev

如何在React本机头中添加CSRF令牌

来自分类Dev

如何在http标头中为令牌设置变量

来自分类Dev

“ rest_framework CSRF令牌失败”,但已在请求标头中将其设置为“ X-CSRF-Token”

来自分类Dev

如何在REST服务的请求标头中设置cookie

来自分类Dev

如何在python请求的标头中发送API密钥?

来自分类Dev

包含后如何在标头中添加内容?

来自分类Dev

如何在jqgrid标头中包含组合框

来自分类Dev

HTTP标头中的令牌?

来自分类Dev

如何在python中的http请求上添加csrf令牌?

来自分类Dev

如何在Angular2中的所有请求的请求标头中发送“ Cookie”?

来自分类Dev

如何在Picasso库的标头中添加身份验证令牌

来自分类Dev

如何在标头中传递令牌并在CS中检索值

来自分类Dev

如何在标头中传递授权令牌以响应Axios.post?

来自分类Dev

外部请求的身份验证-如何在SOAP标头中传递用户凭据?

来自分类Dev

在Java中重定向请求时如何在HTTP标头中传递数据

来自分类Dev

如何在HTTP get请求的标头中设置X-Api-Key

来自分类Dev

如何在请求标头中设置PHP_AUTH_USER和PHP_AUTH_PW?

来自分类Dev

如何在标头中包含SOAP身份验证详细信息?

来自分类Dev

使用http协议调用Web服务时如何在标头中包含信息

来自分类Dev

如何在UICollectionViewController的标头中访问UISegmentedControl?

来自分类Dev

如何在UICollectionViewController的标头中访问UISegmentedControl?

来自分类Dev

AngularJS如何在Http请求中包含标头

来自分类Dev

如何在ruby的http请求中包含标头

来自分类Dev

允许CSRF令牌在正文或标头中发送是否存在安全风险?

来自分类Dev

Ezpay : 标头中不允许使用 csrf 令牌,Laravel 应用程序

来自分类Dev

如何在nodejs中的Swagger UI(swagger.json)中的标头中表示自定义令牌

来自分类Dev

如果我在标头中发送会话ID,是否可以在没有CSRF令牌的情况下阻止CSRF攻击

Related 相关文章

  1. 1

    如何在Ajax POST请求中设置标头以包含CSRF令牌

  2. 2

    如何在 Python 请求标头中包含列表

  3. 3

    如何在React本机头中添加CSRF令牌

  4. 4

    如何在http标头中为令牌设置变量

  5. 5

    “ rest_framework CSRF令牌失败”,但已在请求标头中将其设置为“ X-CSRF-Token”

  6. 6

    如何在REST服务的请求标头中设置cookie

  7. 7

    如何在python请求的标头中发送API密钥?

  8. 8

    包含后如何在标头中添加内容?

  9. 9

    如何在jqgrid标头中包含组合框

  10. 10

    HTTP标头中的令牌?

  11. 11

    如何在python中的http请求上添加csrf令牌?

  12. 12

    如何在Angular2中的所有请求的请求标头中发送“ Cookie”?

  13. 13

    如何在Picasso库的标头中添加身份验证令牌

  14. 14

    如何在标头中传递令牌并在CS中检索值

  15. 15

    如何在标头中传递授权令牌以响应Axios.post?

  16. 16

    外部请求的身份验证-如何在SOAP标头中传递用户凭据?

  17. 17

    在Java中重定向请求时如何在HTTP标头中传递数据

  18. 18

    如何在HTTP get请求的标头中设置X-Api-Key

  19. 19

    如何在请求标头中设置PHP_AUTH_USER和PHP_AUTH_PW?

  20. 20

    如何在标头中包含SOAP身份验证详细信息?

  21. 21

    使用http协议调用Web服务时如何在标头中包含信息

  22. 22

    如何在UICollectionViewController的标头中访问UISegmentedControl?

  23. 23

    如何在UICollectionViewController的标头中访问UISegmentedControl?

  24. 24

    AngularJS如何在Http请求中包含标头

  25. 25

    如何在ruby的http请求中包含标头

  26. 26

    允许CSRF令牌在正文或标头中发送是否存在安全风险?

  27. 27

    Ezpay : 标头中不允许使用 csrf 令牌,Laravel 应用程序

  28. 28

    如何在nodejs中的Swagger UI(swagger.json)中的标头中表示自定义令牌

  29. 29

    如果我在标头中发送会话ID,是否可以在没有CSRF令牌的情况下阻止CSRF攻击

热门标签

归档