您好,匿名用户

fetch默认携带cookie

0 投票

下面是MDN上的说明,fetch如果不设置credentials参数默认是不会携带cookie的。

默认情况下,fetch 不会从服务端发送或接收任何 cookies, 如果站点依赖于用户 session,则会导致未经认证的请求(要发送 cookies,必须设置 credentials 选项)。

但是经过实际实验,fetch不设置credentials属性是可以携带cookie的...只有设置credentials为omit才不会携带cookie。

有没有大佬能解释下...

用户头像 提问 5月29日 @ Sagittarius 中士 (1,214 威望)
分享到:

1个回答

0 投票
 
最佳答案

注意仔细阅读官方文档

omit: 从不发送cookies.
same-origin: 只有当URL与响应脚本同源才发送 cookies、 HTTP Basic authentication 等验证信息.(浏览器默认值,在旧版本浏览器,例如safari 11依旧是omit,safari 12已更改)
include: 不论是不是跨域的请求,总是发送请求资源域在本地的 cookies、 HTTP Basic authentication 等验证信息.

默认值是:同源的时候发送,不同源的时候不发送。并且这个默认值在不同的浏览器中同一浏览器不同版本中都不同,Safari 11是完全不发送,Safari 12是现在的默认值。

用户头像 回复 5月29日 @ Emiya Shirou 中士 (1,453 威望)
选中 5月16日 @Sagittarius
提一个问题:

相关问题

0 投票
1 回复 290 阅读
用户头像 提问 2017年 5月24日 @ Fiora 中士 (1,187 威望)
0 投票
1 回复 483 阅读
用户头像 提问 2017年 3月1日 @ Karma 中士 (1,219 威望)
0 投票
1 回复 142 阅读
0 投票
1 回复 84 阅读
用户头像 提问 2015年 8月31日 @ Hera 下士 (839 威望)
0 投票
1 回复 414 阅读

欢迎来到随意问技术百科, 这是一个面向专业开发者的IT问答网站,提供途径助开发者查找IT技术方案,解决程序bug和网站运维难题等。
温馨提示:本网站禁止用户发布与IT技术无关的、粗浅的、毫无意义的或者违法国家法规的等不合理内容,谢谢支持。

IT技术交流群 - 随意问
欢迎访问随意问技术百科,为了给您提供更好的服务,请及时反馈您的意见。
...