http头部字段之referer和origin

参考:https://www.cnblogs.com/renjie1105/p/15355986.html

介绍

referer字段和origin字段都是用于表示请求来源的。

以下测试在Edge浏览器中进行

Referer字段

表示发起请求的来源页面。一般由浏览器自动分析携带,无法在ajax中指定。

作用

1、请求来源统计
2、防止盗链
3、防止csrf

作用场景

Referer字段是否请求中携带,由浏览器决定,并不是全部场景都会携带。

1、地址栏直接输入url,不携带Referer字段。(导航栏的刷新、前进和后退按钮作用同样不会携带Referer字段。)
2、对于页面内的图片等资源请求,会携带Referer字段
3、超链接跳转会携带Referer字段。

Origin字段

Referer字段的缺点在于包含路径和参数部分,可能存在敏感信息泄露风险,因此设计了Origin字段,其仅包含协议、域名和端口部分。可以替代Referer字段,具有同样的效果。

Origin字段存在时,如果Referer字段也存在,并且包含path和参数部分,则Origin字段无法作用。

作用场景

目前,由于种种原因,浏览器并没有单独使用Origin字段。而是在post请求时,携带Referer以及Origin字段。

posted @ 2022-05-08 18:37  黑白猫123  阅读(679)  评论(0编辑  收藏  举报