img标签src引用网络图片响应403

文章讲述了项目中图片上传到OSS服务器时遇到403错误,经分析是由于防盗链策略导致。通过设置img标签的referrerpolicy属性为no-referrer,成功解决了图片显示问题。还介绍了几种控制Referer策略的方法,包括http响应头和meta标签等。
摘要由CSDN通过智能技术生成

项目中将图片上传到oss服务器上,展示时通过img标签作展示时发现展示不出来,控制台查看发现图片响应403,但是赋值图片链接直接在浏览器打开看是可以正常展示的。

网上搜索的结果img标签src引用网络图片响应403是因为网络安全问题,给的方案是在html的head标签中加上:

<meta name="referrer" content="no-referrer" /> <!--可以让img标签预加载网络图片-->

到此图片可以正常展示了

深刻学习后了解到是因为防盗链的原因导致的,当浏览器向服务器发送请求时,会默认带上将Referer携带在请求头了,Referer是HTTP请求头的一个字段,包含了当前请求页面的来源页面的地址,通过该字段,我们可以检测访客是从哪里来的。通过Referer,我们可以判断请求的来源,从而决定服务器是否正常返回请求资源.

既然如此,如果把referer隐藏掉,也可以绕开部分站点防盗链的限制

一般有下面几种设置Referer策略的方式:

  • 通过 http 响应头中的 Referrer-Policy 字段
  • 通过 meta 标签,name 为 referrer
  • 通过a、area、img、iframe、link元素的 referrerpolicy 属性。
  • 通过a、area、link元素的 rel=noreferrer 属性。

之前查的资料通过meta标签来控制隐藏Referer,此时全部请求都会隐藏请求头中的Referer,不太可取。我这里只需通过添加img标签的referrerpolicy 属性来达到目的:

<img src="http://xxx.xxx.png" referrerPolicy="no-referrer" alt="">
  • 8
    点赞
  • 7
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

濮家大少

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值