专栏首页从零开始学自动化测试python测试开发django-66.图片403forbidden

python测试开发django-66.图片403forbidden

前言

用 django 开发 web 页面,在 HTML 页面上添加图片时,发现本地图片可以正常显示,但是添加一个互联网的图片,却不能正常显示。

本地 static 图片

先在本地 static 放一张图片yy.png,html 里面 img 标签设置图片地址为本地图片地址:static/yy.png

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>Title</title>
</head>
<body>

<p>本地图片连接</p>
<img   src="static/yy.png">

</body>
</html>

在浏览器是可以正常显示图片的

外部图片

找一个互联网上的图片,比如我的公众号二维码的图片地址:https://images2018.cnblogs.com/blog/1070438/201806/1070438-20180601092830072-1349216615.png 在html里面img标签,把src地址设置成这个互联网的图片

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">

    <title>Title</title>
</head>
<body>

<p>本地图片连接</p>
<img   src="static/yy.png">

<p>外部网站图片</p>
<img width="300" height="300"  src="https://images2018.cnblogs.com/blog/1070438/201806/1070438-20180601092830072-1349216615.png">

</body>
</html>

访问的时候,发现图片没法显示,返回403 forbidden

解决办法

关于referrer,说是一种引用策略,可以用来防止图片或视频被盗。它的原理是:http 协议中,如果从一个网页跳到另一个网页,http 头字段里面会带个 Referrer。 图片服务器通过检测 Referrer 是否来自规定域名,来进行防盗链。如果没有设置referrer,那就可以直接绕过防盗链机制,直接使用或盗取。

no-referrer-when-downgrade的原因就是因为不符合安全策略送了referrer,解决办法就是在头部加一行

<meta name="referrer" content="no-referrer" />
<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <meta name="referrer" content="no-referrer" />
    <title>Title</title>
</head>
<body>

<p>本地图片连接</p>
<img   src="static/yy.png">

<p>这是一张图片</p>
<img width="300" height="300"  src="https://images2018.cnblogs.com/blog/1070438/201806/1070438-20180601092830072-1349216615.png">

</body>
</html>        

本文分享自微信公众号 - 从零开始学自动化测试(yoyoketang),作者:上海悠悠

原文出处及转载信息见文内详细说明,如有侵权,请联系 yunjia_community@tencent.com 删除。

原始发表时间:2019-11-07

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

我来说两句

0 条评论
登录 后参与评论

相关文章

  • python接口自动化16-multipart/form-data上传多个附件

    前言 reuqests上传一张图片到服务器,前面已经介绍过了,那么如何在提交BUG的时候,上传附件呢? 上传附件的时候,文件的name参数名称是一样的,pyt...

    上海-悠悠
  • jenkins上展示html报告

    前言 在jenkins上展示html的报告,需要添加一个HTML Publisher plugin插件,把生成的html报告放到指定文件夹,这样就能用jenki...

    上海-悠悠
  • httprunner学习28-yaml文件 参数化读取 csv 文件字符串转 int

    使用 httprunner 框架参数化时,一般参数数据放csv文件,csv 文件默认都是字符串类型,有些接口需传 int 类型的数字。 当读取csv文件的数据后...

    上海-悠悠
  • python PIL 打开\显示\保存图像

    使用python进行数字图片处理,还得安装Pillow包。虽然python里面自带一个PIL(python images library), 但这个库现在已经停...

    于小勇
  • FPGA图像处理系统仿真平台的搭建

    在FPGA实现图像处理算法之前我们需要验证我们的verilog代码的算法是否正确,或者是哪里出了问题,这时搭建一个图像处理的仿真平台就非常必要。我们很容易在仿真...

    FPGA开源工作室
  • Mac VS Code插件安装,查看已安装插件方法

    微软的 Visual Studio Code 编辑器,是目前主流的前端代码编写工具,非常好用。

    小蓝枣
  • Vue localStorage使用

    Coxhuang
  • localStorage详细总结

    localStorage是html5的新特性,所以并不是所有的浏览器都支持,因此在使用localStorage时需要先判断浏览器是否支持localStorage...

    说故事的五公子
  • localStorage详细总结

    localStorage是html5的新特性,所以并不是所有的浏览器都支持,因此在使用localStorage时需要先判断浏览器是否支持localStorage...

    说故事的五公子
  • 使用RestSharp 库消费Restful Service

    现在互联网上的服务接口都是Restful的,SOAP的Service已经不是主流。.NET/Mono下如何消费Restful Service呢,再也没有了方便的...

    张善友

扫码关注云+社区

领取腾讯云代金券