你对iframe知道多少

简介: 你对iframe知道多少

iframe 嵌套第三方页面出现的问题


我们需要通过一个接口获取被嵌套的地址。


然后将改地址赋值给iframe的src中,代码如下


<template>
    <div>
        <iframe
            :src="httpIframeUrl"
            class="whiframe"
            scrolling="yes"
        ></iframe>
    </div>
</template>
<script lang="ts">
import { defineComponent, getCurrentInstance, ref } from 'vue'
import { useRoute } from 'vue-router'
export default defineComponent({
    setup() {
        let route = useRoute()
        let httpIframeUrl = ref('')
        if (route.query.processInstanceId) {
                this,$apihttps.then(res => {
          //返回后将值赋值到iframe的src
                    httpIframeUrl.value = res
                })
                .catch(() => {
                    window.$message.error('地址未获取到')
                })
        } else {
            window.$message.error('未获取到流程实例')
        }
        return { httpIframeUrl }
    },
})
</script>
<style lang="scss" scoped>
.whiframe {
    width: 100%;
    height: 100%;
}
</style>

出现了意外的情况


我以为这样就万事大吉了,可以愉快的下班!


可是意外发生了~~~呜呜


无法打开页面,  


我根据提示添加了


sandbox="allow-scripts allow-top-navigation allow-same-origin allow-popups"
<iframe
  :src="httpIframeUrl"
  class="whiframe"
  scrolling="yes"
  sandbox="allow-scripts 
      allow-top-navigation
      allow-same-origin
      allow-popups"
></iframe>

sandbox的几个常用属性  


allow-scripts==>表示允许被嵌套的子页面执行script


allow-top-navigation==>允许 iframe 内容从包含文档导航(加载)内容。


allow-forms==>允许表单提交


allow-same-origin==>允许不同源【处理跨域】


本以为可以溜之大吉了,结果......


又又出现意外了


Chrome 80以及以上的版本中,重新恢复SameSite cookie策略.


只要在Chrome80浏览器中iframe是携带了cookie,


这个cookie在iframe中会被丢失,从而依赖cookie的接口会出现问题~~


开解决办法:后端设定 Set-Cookie 为 SameSite=None; Secure  


并且要在HTTPS协议下该Cookie才会被发送


有些的小伙伴会说:我的火狐浏览器没有,是这样的!


内核是谷歌的浏览器80版以上就会出现这样的情况。


这样处理后就ok了,然后就下班了,哎!


iframe 进行延迟加载


<iframe src="your url"
loading="lazy"
width="100%"
height="100%"></iframe>


机制小伙伴发现了多了loading="lazy"


loading目前已经支持三种属性值


lazy==>延迟加载的理想选择。


eager==>立即加载(非延迟加载的理想选择)


auto=>由浏览器来决定是否延迟加载


iframe 下载文件


<iframe sandbox="allow-downloads"></iframe>


allow-downloads==>允许下载文件


我看见有的小伙伴在使用


allow-downloads-without-user-activation,个人不建议使用。


因为他表示没有征求用户同意的情况下下载文件。


iframe下打开新窗口的正确姿势


// 子页面使用这两种方式打开会出现的问题是:


// 他们会将父页面的窗口'干掉',然后打开窗


top.location.href = location.href;  


parent.location.href='http://www.baidu.com';


// 正确的使用方式


// 下面这种方式会将在父页面的容器下打开窗口。


window.location.href="http://www.baidu.com"

相关文章
|
Kubernetes 监控 调度
银河麒麟v10-arm离线部署k8s集群(v1.23.4)
银河麒麟v10-arm离线部署k8s集群(v1.23.4)
2777 0
|
Web App开发 移动开发 安全
「趣学前端」关于iframe跨域通信
用技术实现梦想,用梦想打开创意之门。之前开发遇到了iframe跨域通信的问题,今天分享一下解决方案,顺便总结一波知识点。
1675 1
「趣学前端」关于iframe跨域通信
|
前端开发 JavaScript
前端实现文件预览(pdf、excel、word、图片)
前端实现文件预览(pdf、excel、word、图片)
1181 0
|
存储 Web App开发 移动开发
软件安全性测试(连载8)
软件安全性测试(连载8)
229 0
软件安全性测试(连载8)
|
4天前
|
人工智能 安全 API
CoPaw:5分钟部署你的 AI助理
源自阿里巴巴开源生态的个人 AI 助理——CoPaw。作为阿里倾力打造的开源力作,CoPaw 完美打通钉钉、飞书、Discord 等多平台对话通道,支持定时任务自动化。内置 PDF/Office 深度处理、新闻摘要等强大技能,更开放自定义扩展接口。坚持数据全程私有化部署,绝不上传云端,让每一位用户都能在大厂技术加持下,拥有安全、专属的智能助手。
|
7天前
|
人工智能 自然语言处理 JavaScript
2026年Windows+Ollama本地部署OpenClaw保姆级教程:本地AI Agent+阿里云上快速搭建
2026年OpenClaw凭借本地部署、私有化运行的特性,成为打造个人智能体的核心工具,而Ollama作为轻量级本地大模型管理工具,能让OpenClaw摆脱对云端大模型的依赖,实现**本地推理、数据不泄露、全流程私有化**的智能体验。本文基于Windows 11系统,从硬件环境准备、Ollama安装与模型定制、OpenClaw部署配置、技能扩展到常见问题排查,打造保姆级本地部署教程,同时补充阿里云OpenClaw(Clawdbot)快速部署步骤,兼顾本地私有化需求与云端7×24小时运行需求,文中所有代码命令均可直接复制执行,确保零基础用户也能快速搭建属于自己的本地智能体。
8976 73
|
5天前
|
人工智能 安全 JavaScript
阿里云上+本地部署OpenClaw(小龙虾)新手攻略:解锁10大必备Skills,零基础也能玩转AI助手
2026年,开源AI代理工具OpenClaw(昵称“小龙虾”)凭借“能实际做事”的核心优势,在GitHub斩获25万+星标,成为现象级AI工具。它最强大的魅力在于可扩展的Skills(技能包)系统——通过ClawHub插件市场的数百个技能,能让AI助手从简单聊天升级为处理办公、学习、日常事务的全能帮手。
4216 9
|
6天前
|
人工智能 自然语言处理 机器人
保姆级教程:Mac本地搭建OpenClaw及阿里云上1分钟部署OpenClaw+飞书集成实战指南
OpenClaw(曾用名Clawdbot、Moltbot)作为2026年最热门的开源个人AI助手平台,以“自然语言驱动自动化”为核心,支持对接飞书、Telegram等主流通讯工具,可替代人工完成文件操作、日历管理、邮件处理等重复性工作。其模块化架构适配多系统环境,既可以在Mac上本地化部署打造私人助手,也能通过阿里云实现7×24小时稳定运行,完美兼顾隐私性与便捷性。
4390 9
|
8天前
|
人工智能 JSON JavaScript
手把手教你用 OpenClaw + 飞书,打造专属 AI 机器人
手把手教你用 OpenClaw(v2026.2.22-2)+ 飞书,10分钟零代码搭建专属AI机器人!内置飞书插件,无需额外安装;支持Claude等主流模型,命令行一键配置。告别复杂开发,像聊同事一样自然对话。
4760 13
手把手教你用 OpenClaw + 飞书,打造专属 AI 机器人