iframe和伪造ajax
iframe和伪造ajax
1.iframe标签
1.1基本用法
-
示例
Title
Hello World
1.2多个嵌套
Title
Hello World
- 有的网站由于存在安全机制的问题不能够直接使用iframe标签进行访问;
- 多个嵌套也可以结合Pyecharts的图表构建简单的可视化大屏;
2.结合Form表单
2.1 Form表单的提交方式
-
原生方式提交,
-
使用js提交
Title Hello World
-
经实验发先两种提交方式均会跳转界面;因此我们可以借助iframe标签实现form表单的提交
2.2 iframe伪造Ajax
-
步骤:
- 1.添加
标签,并添加id和name,为了在界面上显示的不突兀,我们使用css将iframe标签进行隐藏;
- 2.在
form
标签中添加target=“iframe的name”
- 3.使用
js
进行数据的发送
- 1.添加
-
-
提交后后台已经能够接收到数据;
2.3 接收返回值
Title
Hello World
3.补充:django中通过iframe
-
参考文献:
https://blog.csdn.net/weixin_42886895/article/details/88970578
-
django的老版本可能不会有这个问题;返回HttpResponse的时候会遇到拒绝连接的情况
-
目前我使用的
django==3.2.5
的版本 -
from django.views.decorators.clickjacking import xframe_options_exempt @xframe_options_exempt def autohome(request): if request.method=="GET": return render(request,'autohome.html') else: name=request.POST.get("name") print(name) return HttpResponse("123")
-
使用装饰器啊修饰过后仅,改函数可以正常的返回iframe的信息;如果需要设置全部或者更详细的操作请参考参考文献;
继续努力,终成大器;