HTTP 头部- Origin Referer

这篇具有很好参考价值的文章主要介绍了HTTP 头部- Origin Referer。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

Origin & Referer

Origin Header 示例

Origin 请求头部是一个 HTTP 头部,它提供了发起请求的网页的源(协议、域名和端口)信息。它通常在进行跨域资源共享(CORS)请求时使用,以便服务器可以决定是否接受请求。

假设我们在浏览器的地址栏输入并访问 http://www.example.com,这个网站上有一个 AJAX 请求,该请求需要从 https://api.example.com/data 获取数据。当这个 AJAX 请求被发出时,浏览器会自动添加一个 Origin 头部到这个请求中,如下所示:

Origin: http://www.example.com

服务器 https://api.example.com 会检查这个 Origin 头部,根据设置的 CORS 策略来决定是否允许这个请求。如果 CORS 策略允许来自 http://www.example.com 的请求,服务器将响应数据并在响应头部中包含适当的 Access-Control-Allow-Origin 头部。

Referer Header 示例

Referer 请求头部是一个 HTTP 头部,它标识了发起 HTTP 请求的网页的 URI。它用于告知服务器请求是从哪个页面发起的,通常用于日志记录、分析流量来源以及防止 CSRF 攻击等。

假设我们正在浏览 http://www.example.com/index.html 页面,这个页面上有一个链接指向 http://www.othersite.com/info.html。当点击这个链接时,浏览器会发起一个请求到 http://www.othersite.com/info.html,并且在这个请求中包含一个 Referer 头部,如下所示:

Referer: http://www.example.com/index.html

http://www.othersite.com 的服务器可以查看 Referer 头部,了解用户是从哪个页面跳转过来的。这可以帮助网站管理员了解他们的网站流量来源。同时,Referer 头部有时也被用于反盗链措施,服务器可以检查 Referer 头部,以确保请求是从受信任的来源发起的。

注意事项

  • Origin 头部仅包含协议、域名和端口,没有路径信息,而 Referer 头部则包含完整的 URI。
  • Origin 头部主要用于 CORS 场景中,以确定是否允许跨域请求,而 Referer 头部则广泛用于日志记录、防盗链和安全检查。
  • 由于隐私和安全考虑,某些用户或浏览器配置可能会剥离这些头部,或者使用 Referrer-Policy 头部来限制 Referer 头部的信息量。

Access-Control-Allow-Origin

Access-Control-Allow-Origin 是一个 HTTP 响应头,用于指定在跨源资源共享(CORS, Cross-Origin Resource Sharing)中,允许哪些域名访问该资源。CORS 是一种机制,它使用额外的 HTTP 头来告诉浏览器让一个 web 应用运行在一个源上的脚本,有权限访问另一个源的选定资源。

当一个资源(如字体、JavaScript 等)从与请求网页不同的域、协议或端口请求时,浏览器会实施同源安全策略,阻止跨源 HTTP 请求。Access-Control-Allow-Origin 响应头是服务器告诉浏览器:对于请求的资源,哪些域是被允许的。

格式

Access-Control-Allow-Origin: <origin> | *
  • <origin> 指定了允许访问资源的域。这个值必须是请求来自的域的精确匹配,或者是一个特殊的值 *
  • * 表示接受任何域的请求,也就是说,资源可以被任何域访问。

示例

  1. 特定域名

    如果服务器只允许来自 http://www.example.com 的跨源请求,服务器的响应将包含如下头部:

    Access-Control-Allow-Origin: http://www.example.com
    

    这表明只有 http://www.example.com 上的页面可以请求这个资源。

  2. 任何域名

    如果服务器配置为接受来自任何域的跨源请求,它将包含如下头部:

    Access-Control-Allow-Origin: *
    

    这意味着任何源的页面都可以请求这个资源。不过,使用通配符 * 需要谨慎,因为它可能会引入安全问题。尤其是在响应包含敏感数据时,应该避免使用 *,而是指定明确的、受信任的源。

注意事项

  • 在处理带有凭证的请求(如 Cookies 和 HTTP 认证信息)时,Access-Control-Allow-Origin 不能使用 *。必须指定一个明确的、受信任的域。
  • 如果请求的资源需要多个域的访问权限,服务器需要在接收到请求后,根据请求的 Origin 头部动态设置 Access-Control-Allow-Origin 的值。
  • 使用 Access-Control-Allow-Origin 时,还可能需要配合其他 CORS 相关的头部使用,如 Access-Control-Allow-MethodsAccess-Control-Allow-Headers 等,以实现完整的 CORS 支持。

通过适当配置 Access-Control-Allow-Origin 和其他相关的 CORS 响应头,开发者可以灵活控制资源跨源访问的权限,既保证了 Web 应用的安全性,又提高了资源的可用性和互操作性。文章来源地址https://www.toymoban.com/news/detail-834364.html

到了这里,关于HTTP 头部- Origin Referer的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • HTTP协议安全头部X-Content-Type-Options引入的问题

    本文于2016年4月完成,发布在个人博客网站上。 考虑个人博客因某种原因无法修复,于是在博客园安家,之前发布的文章逐步搬迁过来。 前段时间测试MM反馈了一个问题,在富文本编辑器里上传的图片无法正常呈现。因为Jackie在本机的环境上没有观察类似的现象,而恰好那天

    2024年02月04日
    浏览(49)
  • HTTP与HTTPS:深度解析两种网络协议的工作原理、安全机制、性能影响与现代Web应用中的重要角色

    HTTP (HyperText Transfer Protocol) 和 HTTPS (Hypertext Transfer Protocol Secure) 是互联网通信中不可或缺的两种协议,它们共同支撑了全球范围内的Web内容传输与交互。本文将深度解析HTTP与HTTPS的工作原理、安全机制、性能影响,并探讨它们在现代Web应用中的核心角色。 HTTP 是一种应用层协议

    2024年04月11日
    浏览(61)
  • HTTP请求头referer,防盗链的问题

    项目中有一个查看第三方平台协议的场景。由于协议是第三方提供的,前端需要在用户点击协议名称时,跳转到指定的第三方协议链接页面。最近新对接了个第三方,需要增加他们的协议。 在测试过程中发现个问题:点击跳转连接时,第三方协议链接返回 403 Forbidden ,并抛出

    2024年02月16日
    浏览(59)
  • Cisco Packet Tracer实验:访问Web服务器(加深对网络体系结构的理解)_一台主机访问一个Web服务器,HTTP协议

    如果觉得这篇文章写得好,关注一下公众号“小东方不败”吧!码字不易!感谢大佬的关注! 一台普通的主机和一台服务器: 连线: 配置IP地址: 主机: 服务器: 将模式调成simulation,并且只勾选HTTP协议: 然后就可以看到: 点击PC机,选择Web Browser: 勾选下面的top(置顶

    2024年02月04日
    浏览(62)
  • Web协议:HTTP协议

    HTTP(Hyper Text Transfer Protocol),超文本传输协议是一个简单的请求-响应协议,通常运行在TCP之上。它是用于从万维网(WWW:World Wide Web)服务器传输超文本到本地浏览器的传送协议。它工作在C/S架构上,浏览器

    2024年02月02日
    浏览(30)
  • 【web基础与HTTP协议】

    1.1、域名的概述 1、域名的概念: IP地址不易记忆 2、早期使用Hosts文件解析域名: ·主机名称重复 ·主机维护困难 3、DNS(Domain Name System 域名系统): ·分布式 ·层次性 1.2、域名空间结构 ·根域 ·顶级域 — 组织域 — 国家/地区域名 ·二级域 ·FQDN=主机名.DNS后缀 DNS 解析过程 客户端

    2024年02月07日
    浏览(40)
  • web基础与HTTP协议

    1.1 DNS作用 正向解析 根据域名查找对应的IP地址; 反向解析 根据IP地址查找对应的域名 1.2 域名空间结构 ① 根域 位于域名空间最顶层,一般用一个 “.” 表示 基础单位,除了根域 其他都只有一个上级域,有0或多个子域,同层域不可重复的子域或域名 ② 顶级域 一般代表一

    2024年02月06日
    浏览(36)
  • Web基础①HTTP协议

    HTTP协议采用了请求/响应模型。客户端向服务器发送一个请求,请求头包含请求的方法、URL、协议版本、以及包含请求修饰符、客户信息和内容的类似于MIME的消息结构。 1.HTTP协议版本 (1)HTTP/0.9:已过时。只接受 GET 一种请求方法,没有在通讯中指定版本号,且不支持请求头

    2024年02月21日
    浏览(34)
  • Web基本与HTTP协议

    目录 一:域名 1.域名概述 2.域名空间结构 3. 域名注册 二: 网页访问(HTTP/HTTPS) 1.网页的基本概念 2.网站 3.主页 4.域名 5.HTTP 6.URL 7.网页基本标签 (1)网页摘要信息的作用 (2)标题标签类型 三:HTML 1.HTML 概述 2.HTML 基本标签 (1)HTML 语法规则 (2)HTML 文件结构 (3)网页

    2024年02月06日
    浏览(36)
  • web基础及http协议 (一)

    互联网:是网络的网络,是所有类型网络的母集 因特网:世界上最大的互联网网络。即因特网概念从属于互联网概念。习惯上,大家把连接在因特网上的计算机都成为主机。 万维网:WWW (world wide web)万维网并非某种特殊的计算机网络, 是一个大规模的、联机式的信息贮藏

    2024年02月21日
    浏览(34)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包