首页 > 其他分享 >什么是 HTTP 响应字段里的 Referrer Policy

什么是 HTTP 响应字段里的 Referrer Policy

时间:2023-11-17 19:12:59浏览次数:40  
标签:origin HTTP 请求 网站 Referrer Referer Policy

如下图所示,我在 HTTP 请求的响应头部里看到 Referrer Policy 字段为 strict-origin-when-cross-origin, 这个字段的含义如下。

HTTP 头部中的 Referrer Policy 字段用于定义浏览器在跨站请求时应如何处理 HTTP Referer 头部。这是一个重要的字段,因为它可以帮助网站所有者控制他们的网站信息如何被共享,并可以提高网站的安全性。这个字段有几个可能的值,其中之一就是 strict-origin-when-cross-origin

strict-origin-when-cross-origin 的含义是:如果请求是在同一个网站内部进行(也就是不跨域)时,Referer 头部将包含完整的 URL。而当请求跨域时,Referer 头部只会包含发出请求的网站的源信息(协议、主机和端口),不包含路径或者查询字符串。

举个例子,假设一个页面的 URL 为 https://www.example.com/path?query=1,当这个页面发出一个同源请求,比如请求 https://www.example.com/api/data,那么请求的 Referer 头部将会是完整的 URL:https://www.example.com/path?query=1

然而,如果这个页面发出一个跨域请求,比如请求 https://www.other-site.com/api/data,那么请求的 Referer 头部将只会是源信息:https://www.example.com

这个策略的优点是,当你的网站与其他网站进行跨域通信时,可以防止敏感的路径和查询参数信息被泄露。这样可以提高网站的安全性,防止可能的数据泄露。

然而,这种策略也有一些局限性。例如,如果你的网站需要与其他网站共享某些路径或查询参数信息,那么 strict-origin-when-cross-origin 策略可能就不适用了。在这种情况下,你可能需要选择一个更适合的 Referrer Policy 策略。

注意,Referrer Policy 的默认值是 no-referrer-when-downgrade,这意味着如果请求是从 HTTPS 到 HTTP,Referer 头部将被省略。如果你没有明确设置 Referrer Policy,那么将使用这个默认值。

总的来说,Referrer Policy 是一个强大的工具,可以帮助你控制你的网站信息如何被共享。选择正确的策略可以提高你的网站的安全性,防止可能的数据泄露。

标签:origin,HTTP,请求,网站,Referrer,Referer,Policy
From: https://www.cnblogs.com/sap-jerry/p/17839506.html

相关文章

  • Java使用HttpClient实现GET和POST请求
    GET请求(带参数)前端exportconstgetRealTimeData=(deviceLabel)=>{returnrequest({url:'/blade-inorganization/Data/realTime-data?deviceLabel='+deviceLabel,method:'get',})}import{getRealTimeData}from"@/api/......
  • https和http的区别和优势
    大家好,我是咕噜-凯撒,HTTP(超文本传输协议)和HTTPS(安全超文本传输协议)是用于在网络上传输数据的协议,HTTPS相比HTTP在数据传输过程中更加安全可靠,适合对数据安全性要求较高的场景,如网上银行、电子商务等。所以在涉及到用户隐私信息和支付信息的网站中,都会采用HTTPS协议来保护数据安全。......
  • Core 6.0 webapi ‘报错InvalidOperationException:无法解析“ Microsoft.AspNetCore.H
    因接口版本升级并使用core6.0却发现HttpContext.Current.Request用不了 所以在网上找了半天说是使用Microsoft.AspNetCore.Http.IHttpContextAccessorprivateIHttpContextAccessor_httpContextAccessor;publicWebHelper(IHttpContextAccessorhttpContextAccessor......
  • HTTP 响应字段 Transfer-Encoding 赋值成 chunked 的作用介绍
    Transfer-Encoding:chunked是HTTP/1.1协议中定义的一种数据传输方式。在HTTP/1.1之前,HTTP协议的响应数据通常是一次性发送的,也就是说,服务器必须把所有的响应数据准备好后,一次性发送给客户端。这种方式的缺点是,如果响应数据很大,或者数据的产生需要花费一定的时间,那么服务器......
  • 全志XR806基于http的无线ota功能实验
    XR806不仅硬件功能多,XR806也提供了功能极其丰富的SDK,几天体验下来非常容易上手。常见的功能几乎都有相应的cmd或demo实现,HAL也做得非常全面,非常适合快速开发。这一点超级好评!本文章要实现的无线OTA也基于该SDK。环境搭建本实验主机环境为ubuntu,并基于freertossdk开发,这里不详述,......
  • 3、HTTP常见面试题
    HTTP是什么?Http是超文本传输协议,一种在通信双方之间指定的规则。其中超文本是指数据格式可以是文本、图片、视频等等各种类型的数据;HTTP常见的状态码1xx:提示信息,传输协议处理的中间状态2xx:请求成功。客户端发起的请求被服务端正确处理并返回响应数据3xx:资源重定位。客户端请......
  • http请求问题
    在建立http请求的时候,一定要注意请求格式:publicstaticJSONObjecthttpRequest(StringrequestUrl,StringrequestMethod,StringoutputStr){JSONObjectjsonObject=null;StringBufferbuffer=newStringBuffer();try{URLurl=newURL(requestUrl);......
  • HTTP 响应字段 Transfer-Encoding 的作用介绍
    Transfer-Encoding字段是HTTP响应头部的一部分,用于指示在传输响应正文(responsebody)时所使用的传输编码方式。在HTTP通信中,响应正文可以以多种不同的编码方式传输,其中一种方式是chunked传输编码。本文将详细介绍Transfer-Encoding字段的含义和chunked传输编码,以及提供示例来解释这......
  • 微服务 在 Java 代码中发送 http 请求(跨服务远程调用)
    1.注册RestTemplate对象到Spring容器中(Bean的注入只能放在配置类里,而启动类本身就是配置类)@SpringBootApplicationpublicclassOrderServiceApplication{publicstaticvoidmain(String[]args){SpringApplication.run(OrderServiceApplication.class,......
  • http请求头中的content-type
    web开发过程中客户端与服务端一般通过HTTP协议交互信息,而请求头和响应头用来承载这些交互信息。请求头和响应头比较正式的叫法分别是请求报文和响应报文,统称为HTTP报文。下面是HTTP报文的结构:HTTP报文分为报文首部和报文主体,两者之间用空行分隔(空行由回车符和换行符生成)。cont......