说明:收录25万 73个行业的国家标准 支持批量下载
(19)中华 人民共和国 国家知识产权局 (12)发明 专利申请 (10)申请公布号 (43)申请公布日 (21)申请 号 202210173391.1 (22)申请日 2022.02.24 (71)申请人 浪潮云信息技 术股份公司 地址 250100 山东省济南市高新区浪潮路 1036号浪潮科技园S01号楼 (72)发明人 钱子钦 于希光 江燕 高传集  孙思清 肖雪  (74)专利代理 机构 济南信达专利事务所有限公 司 37100 代理人 姜鹏 (51)Int.Cl. G06F 16/958(2019.01) G06F 16/23(2019.01) G06F 9/445(2018.01) (54)发明名称 一种在浏览器多个页签间通讯并更新状态 的方法 (57)摘要 本发明提供了一种在浏览器多个页签间通 讯并更新状态的方法, 包括以下步骤: 创建 sharedworker线程, 页签订阅新建线程, 页签发 送通知给线程, 线程给所有已订阅页签发送通 知, 页签根据收到的通知变化状态, 关闭端口。 有 益效果为: 利用了Html5新增的SharedWorker   api, 在客户端支持SharedWorker并且页签都保 证同源(相同的协议, 主机和端口号)的基础上采 用通过SharedWorker建立新线程来间接的建立 页签间通信的通道, 从而解决页签间的通讯及状 态更新问题, 并且可以以较低的成本进行功能上 的实现和复用, 拓展了单个页签对浏览器可操作 的权限。 权利要求书2页 说明书4页 附图1页 CN 114385956 A 2022.04.22 CN 114385956 A 1.一种在 浏览器多个页签间通讯并更新状态的方法, 其特 征在于, 包括以下步骤: 创建sharedworker线程, 检查客户端的浏览器是否存在SharedWorker  api, 在客户端 支持SharedWorker并且页签都保证同源, 即相同的协议, 主机和端口号的基础下, 通过 SharedWorker api加载Sh aredWorker的js配置文件, 因此js配置文件需要单独打包, 在浏 览器js主 线程外新增一条线程; 页签订阅新建线程, 将所有页签都订阅这个新建的线程, 订阅后页签与线程间就已经 建立起了一条通信的管道, 之后页签就可以向新线程接收或发送消息; 页签发送通知给线程, 当某一个页签状态发生改变时调用通信通道的postMessage方 法发送通知去 告知线程; 线程给所有已订 阅页签发送通知, 线程接收到页签发送的通知后会发送广播给所有已 经订阅当前线程的页签, 或者 通过筛选发送给指定的页签; 页签根据收到的通知变化状态, 单个页签在收到广播后触发绑定的回调函数对收到的 数据进行解析并根据 广播的内容自行决定是否发生页面的变化; 关闭端口, 不再需要 使用SharedW orker时关闭端口。 2.根据权利要求1所述的一种在浏览器多个页签间通讯并更新状态的方法, 其特征在 于: 创建sharedworker线程步骤中, worker线程执行的脚本文件必须和 主线程的脚本文件 同源。 3.根据权利要求2所述的一种在浏览器多个页签间通讯并更新状态的方法, 其特征在 于: 创建sharedworker线程步骤中, worker线程无法读取本地文件, 它所加载的脚本必须来 自网络, 且需要与主 线程的脚本同源。 4.根据权利要求3所述的一种在浏览器多个页签间通讯并更新状态的方法, 其特征在 于: 创建sharedworker线程步骤 中, worker线程在与主线程的window不同的另一个全局上 下文中运行, 其中无法读取主线程所在网页的DOM对象, 也不能获取document、 win dow等对 象, 但是可以获取navig ator、 location、 XMLHttpRequest、 setTimeout族等浏览器API。 5.根据权利要求4所述的一种在浏览器多个页签间通讯并更新状态的方法, 其特征在 于: 创建sharedworker线程步骤中, worker线程与主线程不在同一个上下文, 不能直接通 信, 需要通过postMes sage方法来通信。 6.根据权利要求5所述的一种在浏览器多个页签间通讯并更新状态的方法, 其特征在 于: 创建sharedworker线程步骤中, worker线程不能执行alert、 confirm, 但可以使用 XMLHttpRequest对象发出ajax请求。 7.根据权利要求6所述的一种在浏览器多个页签间通讯并更新状态的方法, 其特征在 于: 创建sharedworker线程步骤中, 同一个js  url只会创建一个sharedWorker, 其他页面再 使用同样的url创建sharedWorker, 会复用已创建的worker, 这个worker由那几个页面共 享, sharedW orker通过por t来发送和接收消息 。 8.根据权利要求7所述的一种在浏览器多个页签间通讯并更新状态的方法, 其特征在 于: 页签订阅新建线程步骤中, 在接 收消息前需要在页签内绑定当前通信通道接 收到消息 的回调函数, 通过回调函数来 解析收到的消息并根据消息来进行页面的更新。 9.根据权利要求8所述的一种在浏览器多个页签间通讯并更新状态的方法, 其特征在 于: 页签发送通知给线程步骤中, postMessage方法只接收字符串, 因此如果需要发送权 利 要 求 书 1/2 页 2 CN 114385956 A 2Object类型的数据需要先对数据类型进行转 化。 10.根据权利要求9所述的一种在浏 览器多个页签间通讯并更新状态的方法, 其特征在 于: 线程给所有已订阅页签发送 通知步骤中, 通过设置SharedWor ker js配置文件中信道的 回调函数, 筛 选出需要发送消息的信道。权 利 要 求 书 2/2 页 3 CN 114385956 A 3

.PDF文档 专利 一种在浏览器多个页签间通讯并更新状态的方法

文档预览
中文文档 8 页 50 下载 1000 浏览 0 评论 309 收藏 3.0分
温馨提示:本文档共8页,可预览 3 页,如浏览全部内容或当前文档出现乱码,可开通会员下载原始文档
专利 一种在浏览器多个页签间通讯并更新状态的方法 第 1 页 专利 一种在浏览器多个页签间通讯并更新状态的方法 第 2 页 专利 一种在浏览器多个页签间通讯并更新状态的方法 第 3 页
下载文档到电脑,方便使用
本文档由 人生无常 于 2024-03-17 23:59:08上传分享
友情链接
站内资源均来自网友分享或网络收集整理,若无意中侵犯到您的权利,敬请联系我们微信(点击查看客服),我们将及时删除相关资源。