X-XSRF-TOKEN和X-CSRF-TOKEN有什么区别? [英] what is the difference between X-XSRF-TOKEN and X-CSRF-TOKEN?

查看:4508
本文介绍了X-XSRF-TOKEN和X-CSRF-TOKEN有什么区别?的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

何时使用隐藏字段以及何时使用标题以及为什么?
X-XSRF_TOKEN何时使用?
X-CSRF TOKEN什么时候使用?

When use hidden field and when use header and why ?
X-XSRF_TOKEN when we use?
X-CSRF TOKEN when we use?

推荐答案

所有这些都是用于跨站点请求伪造保护的,并且在向后端发送请求时,您只需使用其中一个.

All of them are for cross site request forgery protection and you need to use just one of them when sending a request to backend.

csrf:

  • 以html形式使用(不是ajax)
  • 我们无法直接在html表单中设置请求标头,因此我们必须通过表单输入将其发送为隐藏字段.

x-csrf令牌:

  • 已将其添加到ajax请求的请求标头中.
  • 使用laravel作为后端时. laravel自动检查此标头,并将其与数据库中的有效csrf进行比较.
  • It is added to request header for ajax requests.
  • When using laravel as backend. laravel checks this header automatically and compares it to valid csrf in database.

x-xsrf令牌:

  • 已将其添加到ajax请求的请求标头中.
  • 受欢迎的库(例如angular和axios)会自动从xsrf-token cookie获取此标头的值,并在每次请求时将其发送.
  • 因为它很流行,所以laravel在每个响应中都创建了这个cookie.
  • 因此,当您使用例如axioslaravel时,您无需执行任何操作.只需登录用户,"auth"中间件就可以完成工作.
  • x-csrf-token相比,它的字符串更大,因为cookie是在laravel中加密的.
  • It is added to request header for ajax requests.
  • Popular libraries like angular and axios, automatically get value of this header from xsrf-token cookie and send it with every request.
  • Because it's popular, laravel creates this cookie in each response.
  • so when you're using for example axios and laravel you don't need to do anything. just log user in and 'auth' middleware will do the job.
  • Its a bigger string compared to x-csrf-token because cookies are encrypted in laravel.

这篇关于X-XSRF-TOKEN和X-CSRF-TOKEN有什么区别?的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆