gpt4 book ai didi

javascript - Http requests withCredentials 这是什么以及为什么要使用它?

转载 作者:可可西里 更新时间:2023-11-01 15:05:54 26 4
gpt4 key购买 nike

我在使用节点和 Angular CORS 时遇到问题,添加此选项时 true 解决了我的问题。但是我找不到有关它是什么以及它在做什么的信息。请问有人可以解释一下吗?

最佳答案

简答:

withCredentials() 使您的浏览器在您的 XHR 请求中包含 cookie 和身份验证 header 。如果您的服务依赖于任何 cookie(包括 session cookie),则它仅适用于此选项集。

更长的解释:

当您向不同的源服务器发出 Ajax 请求时,浏览器可能会向服务器发送 OPTIONS 飞行前请求以发现端点的 CORS 策略(对于非 GET 请求)。

由于请求可能是由恶意脚本触发的,为了避免自动将身份验证信息泄露给远程服务器,浏览器应用以下规则:

对于 GET 请求,在服务器请求中包含 cookie 和身份验证信息:

  • 如果在 withCredentials 选项设置为 true 的情况下调用 XHR 客户端
  • 如果服务器回复不包含 CORS header Access-Control-Allow-Credentials: true,则在将对象返回给 Javascript 之前丢弃响应

对于非 GET 请求,仅包含 cookie 和身份验证信息:

  • 如果 XHR 对象上的 withCredentials 设置为 true
  • 并且服务器已在飞行前选项中包含 CORS header Access-Control-Allow-Credentials: true

关于javascript - Http requests withCredentials 这是什么以及为什么要使用它?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/27406994/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com