You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Fetch合规浏览器发送的Origin头中可包含哪些协议?

Fetch合规浏览器Origin头的协议细节

支持的协议类型

Fetch合规浏览器在发送Origin头时,会携带以下几类协议(仅针对能生成非null序列化源的场景):

  • http、https:这是跨源请求中最普遍的协议,所有合规浏览器都会在这类页面发起的跨源请求中携带对应协议的Origin头
  • ftp:部分现代浏览器仍支持从FTP页面发起跨源请求,此时Origin头会包含ftp://前缀
  • ws、wss:WebSocket页面发起跨源请求时,Origin头会携带ws或wss协议标识

另外,file协议的情况比较特殊:部分浏览器(比如Firefox)会在本地file://页面发起跨源请求时发送带file://的Origin头,但Chrome等浏览器会将其视为不透明源,发送null。由于行为不一致,通常不将其纳入稳定的协议集合。

协议集合的基数

如果只统计所有合规浏览器都一致支持、会发送非null Origin头的协议,基数是5:http、https、ftp、ws、wss。

不透明源的特殊处理

data:、blob:、filesystem:这类属于不透明源,浏览器对它们进行字节序列化后得到的结果是null,所以这类请求的Origin头值为null,不会携带对应的协议前缀。

标准层面的说明

Fetch标准确实没有硬性限制Origin头的协议范围,但浏览器的实现会遵循同源策略的延伸逻辑:只有具备可序列化源的协议,才会在Origin头中携带完整的源信息;不透明源则统一发送null。

内容的提问来源于stack exchange,提问作者jub0bs

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.14 17:20:30