首页 > 其他分享 >iframe嵌套的https服务,权限开放设置

iframe嵌套的https服务,权限开放设置

时间:2023-07-17 10:11:07浏览次数:44  
标签:iframe https 嵌套 allow 使用 允许 属性

1、场景:

  chatGPT开发语音功能,部署服务需要https协议,有个独立的门户需要将服务以iframe嵌入到系统中

2、问题:

  chatGPT语音服务无法弹出授权开启麦克的提示

3、原因:

  iframe默认是关闭了相关权限

4、处理:

参考说明

<iframe>标签的 sandbox 属性是一个布尔属性,当存在时表示将在 iframe 内部加载的文档中禁用指定的功能。该属性支持以下几个值:

空值:默认情况下,没有禁用任何功能。
"allow-forms":允许在 iframe 中提交表单。
"allow-pointer-lock":允许通过 Pointer Lock API 锁定鼠标指针。
"allow-popups":允许在 iframe 中打开弹出窗口。
"allow-same-origin":允许在 iframe 中访问与父级页面具有相同来源的资源。
"allow-scripts":允许在 iframe 中运行脚本。
"allow-top-navigation":允许在 iframe 中导航到新 URL。
可以使用空格或分号将多个值组合在一起,例如:
<iframe src="example.com" sandbox="allow-forms allow-scripts"></iframe>

 

<iframe>标签的 allow 属性是一个用于指定允许在 iframe 中使用哪些功能的属性。该属性接受一个由分号分隔的字符串,其中每个部分都是一个允许使用的功能。

以下是 allow 属性支持的不同功能:

accelerometer: 允许使用设备加速度计。
autoplay: 允许自动播放媒体(在某些浏览器中可能需要静音)。
camera: 允许使用相机。
encrypted-media: 允许解密受版权保护的媒体。
fullscreen: 允许进入全屏模式。
geolocation: 允许对用户位置进行地理定位。
gyroscope: 允许使用设备陀螺仪。
magnetometer: 允许使用设备磁力计。
microphone: 允许使用麦克风。
midi: 允许使用 MIDI 设备。
payment: 允许使用付款请求 API。
picture-in-picture: 允许视频以画中画方式显示。
speaker: 允许使用扬声器。
usb: 允许使用 USB 设备。
例如:
<iframe src="example.com" allow="autoplay; camera; encrypted-media"></iframe>

综合以上参考最终配置:

<iframe id="chatifm" allow="encrypted-media; microphone; fullscreen"  />

 

标签:iframe,https,嵌套,allow,使用,允许,属性
From: https://www.cnblogs.com/xtreme/p/17559250.html

相关文章

  • Nginx双层域名时 iframe嵌入/跳转页面的处理过程
    Nginx双层域名时iframe嵌入/跳转页面的处理过程背景两年前在上一家公司内遇到一个Nginx的问题当时的场景是双层nginx代理时(一层域名侧,一层拆分微服务的网关层)程序里面会打开一个嵌套的iframe,便于进行缩放.但是此时因为只能就近获取第二层反向代理的upstream的域......
  • 信息安全 -- 数据加密 -- HTTPS原理
    对称加密:同一个密钥进行加解密,典型的对称加密方式AES算法优点:运算速度快缺点:密钥需要信息交换的双方共享,一旦被窃取,消息会被破解 非对称加密:公钥加密,私钥解密;或者私钥加密,公钥解密优点:私钥严格保密,公钥任意分发,黑客获取公钥无法破解密文缺点:运算速度非常慢非对称加密的......
  • C#中数组嵌套数组
    publicclassmo{publicintq1{get;set;}publicintcount{get;set;}}classClass1{staticvoidMain(string[]args){int[]a=newint[]{1,2,3,4,5};int[]b1=n......
  • 解决浏览器自动将http跳转至https导致无法访问的问题
      最近在宝塔面板申请免费的SSL证书后,部署证书的80端口下的网站可以通过https正常访问,但其他未部署证书的端口也被强制跳转至https请求,导致浏览器提示不安全从而无法访问。宝塔的8888端口也不能访问,当时那是一个慌,当我尝试了各种方法,如重新放行443端口、重新配置nginx反向代理、......
  • httplib库的使用(支持http/https)
    httplib库的使用,支持http/httpshttplib库简介1.文件目录2.client端2.1快速搭建一个client端2.2HTTPS2.3下载文件2.4GET大数据2.5POST大数据2.6上传文件3.server端的简单使用4.其他资料httplib库简介httplib库是一个以C++11特性编写的库,所以编译器也需要能......
  • Oracle学习笔记:parallel并行处理 --转载 https://blog.csdn.net/w892824196/article/
    在使用oracel查询时,可以通过并行提高查询速度。例如:select/*+parallel(a,6)*/count(1)fromtable_namea;强行启用并行度来执行当前SQL。加上这个说明之后,可以强行启用Oracle的多线程处理功能,提高效率。但本身启动这个功能,也是要消耗资源与性能的。所有,一般都会在返回记......
  • 老杜 JavaWeb 讲解(十) —— HttpServletRequest接口源码分析
    (十二)HttpServletRequest接口源码分析对应视频:21-HttpServletRequest接口12.1介绍HttpServletRequest是一个接口,全限定名称:jakarta.servlet.http.HttpServletRequestHttpServletRequest接口是Servlet规范中的一员。HttpServletRequest接口的父接口:ServletRequest......
  • 什么是HTTPS?与HTTP的区别?
    HTTP(HypertextTransferProtocol)和HTTPS(HypertextTransferProtocolSecure)是用于在网络上传输数据的两种协议。它们之间的主要区别在于安全性和数据传输的方式。在本文中,我们将详细解释HTTP和HTTPS的区别,并介绍HTTPS证书的概念、使用方法和作用。一、HTTP的基本概念和工作原理H......
  • 记一下el-popover和el-tabs嵌套时tabs下划线显示不正确的bug
    在使用el-popover和el-tabs嵌套时出现了这样的bug,组件第一次生成时消息下面的蓝条会消失,需要手动点击之后才会重新出现,记录一下该问题,希望对同样遇到问题的同学有所帮助后来我通过这位博主(http://hk.aiuxian.com/article/p-eirtvdap-ne.html)了解到,这应该是elementui的bug,这位老......
  • 使用Certbot免费https证书运行django
    CertbotインストールbashsudoaptinstallcertbotNginxを停止bashsudosystemctlstopnginx......