CN116955294A - 文件预览方法、装置、电子设备及存储介质 - Google Patents
文件预览方法、装置、电子设备及存储介质 Download PDFInfo
- Publication number
- CN116955294A CN116955294A CN202310822335.0A CN202310822335A CN116955294A CN 116955294 A CN116955294 A CN 116955294A CN 202310822335 A CN202310822335 A CN 202310822335A CN 116955294 A CN116955294 A CN 116955294A
- Authority
- CN
- China
- Prior art keywords
- file
- instant messaging
- preview
- target file
- messaging client
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
- 238000000034 method Methods 0.000 title claims abstract description 84
- 238000003860 storage Methods 0.000 title claims abstract description 18
- 230000015654 memory Effects 0.000 claims description 23
- 230000004044 response Effects 0.000 claims description 23
- 230000008569 process Effects 0.000 claims description 17
- 238000004891 communication Methods 0.000 claims description 15
- 238000004590 computer program Methods 0.000 claims description 15
- 238000009877 rendering Methods 0.000 claims description 5
- 238000004458 analytical method Methods 0.000 claims description 3
- 239000000758 substrate Substances 0.000 claims 1
- 230000006870 function Effects 0.000 description 17
- 238000005516 engineering process Methods 0.000 description 12
- 238000012545 processing Methods 0.000 description 12
- 238000010586 diagram Methods 0.000 description 5
- 230000000694 effects Effects 0.000 description 5
- 230000009286 beneficial effect Effects 0.000 description 3
- 230000005540 biological transmission Effects 0.000 description 3
- 238000012546 transfer Methods 0.000 description 3
- 230000001960 triggered effect Effects 0.000 description 3
- 230000003993 interaction Effects 0.000 description 2
- 238000007726 management method Methods 0.000 description 2
- 230000003287 optical effect Effects 0.000 description 2
- 238000013515 script Methods 0.000 description 2
- 238000013459 approach Methods 0.000 description 1
- 238000013473 artificial intelligence Methods 0.000 description 1
- 238000004364 calculation method Methods 0.000 description 1
- 230000007123 defense Effects 0.000 description 1
- 230000001419 dependent effect Effects 0.000 description 1
- 238000001514 detection method Methods 0.000 description 1
- 230000002708 enhancing effect Effects 0.000 description 1
- 230000006872 improvement Effects 0.000 description 1
- 230000010354 integration Effects 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000002093 peripheral effect Effects 0.000 description 1
- 238000011084 recovery Methods 0.000 description 1
- 239000007787 solid Substances 0.000 description 1
- 230000000007 visual effect Effects 0.000 description 1
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/10—File systems; File servers
- G06F16/16—File or folder operations, e.g. details of user interfaces specifically adapted to file systems
- G06F16/168—Details of user interfaces specifically adapted to file systems, e.g. browsing and visualisation, 2d or 3d GUIs
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F40/00—Handling natural language data
- G06F40/10—Text processing
- G06F40/103—Formatting, i.e. changing of presentation of documents
- G06F40/106—Display of layout of documents; Previewing
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L51/00—User-to-user messaging in packet-switching networks, transmitted according to store-and-forward or real-time protocols, e.g. e-mail
- H04L51/04—Real-time or near real-time messaging, e.g. instant messaging [IM]
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Physics & Mathematics (AREA)
- Health & Medical Sciences (AREA)
- Databases & Information Systems (AREA)
- Data Mining & Analysis (AREA)
- Human Computer Interaction (AREA)
- Artificial Intelligence (AREA)
- Audiology, Speech & Language Pathology (AREA)
- Computational Linguistics (AREA)
- General Health & Medical Sciences (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Information Transfer Between Computers (AREA)
Abstract
本申请提供了一种文件预览方法、装置、电子设备及存储介质,方法包括:显示即时通信客户端中的会话界面,其中,所述会话界面包括至少一个文件;响应于针对目标文件的触发操作,显示所述目标文件的文件预览界面,其中,所述目标文件是所述至少一个文件中的任一文件;响应于所述即时通信客户端处于锁定模式,在所述文件预览界面中显示提示信息,其中,所述锁定模式至少用于拦截显示所述目标文件的本地预览内容,所述提示信息用于提示本地预览失败,以及在所述文件预览界面中显示所述目标文件的在线预览内容。通过本申请,能够在锁定模式下实现文件的预览。
Description
技术领域
本申请涉及互联网技术领域,尤其涉及一种文件预览方法、装置、电子设备及存储介质。
背景技术
为了防止用户的身份或者工作被数字威胁(例如恶意软件)所针对,相关技术提出了锁定模式。在开启锁定模式后,一些应用程序、网站的功能会受到严格限制以保证安全性。例如,对于即时通信客户端(例如企业即时通信客户端)来说,锁定模式在给用户带来安全保护的同时,限制了企业即时通信客户端使用网络(Web)服务预览本地文件的能力,即企业即时通信客户端调用浏览器对本地文件进行解析的操作会被锁定模式拦截,从而导致本地预览失败,为用户的工作带来诸多不便。
发明内容
本申请实施例提供一种文件预览方法、装置、电子设备、计算机可读存储介质及计算机程序产品,能够在锁定模式下实现文件的预览。
本申请实施例的技术方案是这样实现的:
本申请实施例提供一种文件预览方法,包括:
显示即时通信客户端中的会话界面,其中,所述会话界面包括至少一个文件;
响应于针对目标文件的触发操作,显示所述目标文件的文件预览界面,其中,所述目标文件是所述至少一个文件中的任一文件;
响应于所述即时通信客户端处于锁定模式,在所述文件预览界面中显示提示信息,其中,所述锁定模式至少用于拦截显示所述目标文件的本地预览内容,所述提示信息用于提示本地预览失败,以及
在所述文件预览界面中显示所述目标文件的在线预览内容。
本申请实施例提供一种文件预览装置,包括:
显示模块,用于显示即时通信客户端中的会话界面,其中,所述会话界面包括至少一个文件;
所述显示模块,还用于响应于针对目标文件的触发操作,显示所述目标文件的文件预览界面,其中,所述目标文件是所述至少一个文件中的任一文件;
所述显示模块,还用于响应于所述即时通信客户端处于锁定模式,在所述文件预览界面中显示提示信息,其中,所述锁定模式至少用于拦截显示所述目标文件的本地预览内容,所述提示信息用于提示本地预览失败,以及在所述文件预览界面中显示所述目标文件的在线预览内容。
本申请实施例提供一种电子设备,包括:
存储器,用于存储可执行指令;
处理器,用于执行所述存储器中存储的可执行指令时,实现本申请实施例提供的文件预览方法。
本申请实施例提供一种计算机可读存储介质,存储有计算机可执行指令,用于被处理器执行时,实现本申请实施例提供的文件预览方法。
本申请实施例提供一种计算机程序产品,包括计算机程序或计算机可执行指令,用于被处理器执行时,实现本申请实施例提供的文件预览方法。
本申请实施例具有以下有益效果:
当检测到即时通信客户端处于锁定模式时,在文件预览界面中显示目标文件的在线预览内容,如此,实现了锁定模式下的文件预览,也就是说,能够在即时通信客户端继续受到锁定模式带来的安全保护的同时,在即时通信客户端中直接实现文件的预览,即在没有舍弃锁定模式带来的安全保护的同时,为用户提供了在没有开启锁定模式时一致的预览体验。
附图说明
图1是本申请实施例提供的文件预览系统100的架构示意图;
图2是本申请实施例提供的电子设备600的结构示意图;
图3是本申请实施例提供的文件预览方法的流程示意图;
图4是本申请实施例提供的文件预览方法的流程示意图;
图5是本申请实施例提供的文件预览方法的流程示意图;
图6是本申请实施例提供的文件预览方法的应用场景示意图;
图7是本申请实施例提供的文件预览方法的流程示意图;
图8是本申请实施例提供的文件预览方法的流程示意图;
图9是本申请实施例提供的文件预览方法的流程示意图;
图10是本申请实施例提供的文件预览方法的流程示意图。
具体实施方式
为了使本申请的目的、技术方案和优点更加清楚,下面将结合附图对本申请作进一步地详细描述,所描述的实施例不应视为对本申请的限制,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其它实施例,都属于本申请保护的范围。
在以下的描述中,涉及到“一些实施例”,其描述了所有可能实施例的子集,但是可以理解,“一些实施例”可以是所有可能实施例的相同子集或不同子集,并且可以在不冲突的情况下相互结合。
可以理解的是,在本申请实施例中,涉及到用户信息等相关的数据,当本申请实施例运用到具体产品或技术中时,需要获得用户许可或者同意,且相关数据的收集、使用和处理需要遵守相关国家和地区的相关法律法规和标准。
在以下的描述中,所涉及的术语“第一\第二\...”仅仅是是区别类似的对象,不代表针对对象的特定排序,可以理解地,“第一\第二\...”在允许的情况下可以互换特定的顺序或先后次序,以使这里描述的本申请实施例能够以除了在这里图示或描述的以外的顺序实施。
除非另有定义,本文所使用的所有的技术和科学术语与属于本申请的技术领域的技术人员通常理解的含义相同。本文中所使用的术语只是为了描述本申请实施例的目的,不是旨在限制本申请。
对本申请实施例进行进一步详细说明之前,对本申请实施例中涉及的名词和术语进行说明,本申请实施例中涉及的名词和术语适用于如下的解释。
1)响应于:用于表示所执行的操作所依赖的条件或者状态,当满足所依赖的条件或状态时,所执行的一个或多个操作可以是实时的,也可以具有设定的延迟;在没有特别说明的情况下,所执行的多个操作不存在执行先后顺序的限制。
2)锁定模式:是一种安全防御模式,能够为用户带来高级别的信息安全保护。在启用锁定模式后,用户的设备将无法正常工作,为了减少具有高度针对性的恶意软件可能会利用的攻击面,某些应用程序、网站和功能会受到严格限制以保证安全性,导致部分功能不可用,例如即时通信客户端调用浏览器对文件进行解析的操作会被拦截,从而导致文件预览失败。
3)网盘:又称网络U盘、网络硬盘,是由互联网公司推出的在线存储服务。服务器机房为用户划分一定的磁盘空间,为用户免费或收费提供文件的存储、访问、备份、共享等文件管理功能,并且拥有高级的世界各地的容灾备份。例如可以利用网盘统一管理企业文件,方便员工随时访问。各项目团队可按需灵活创建存储空间,并单独分配文件权限。同时企业可以通过接口对网盘的文件进行操作和设置权限。
4)消息:即时通信客户端存储的一种数据结构,用户每次发出的一条消息作为一个对象进行存储,由唯一标识(ID,Identity Document)字段进行识别。
5)本地文件:指在通过即时通信客户端聊天时发送的文件,包括Word、PPT、Excel等文档类文件。
6)即时通信客户端:为用户提供互联网社交服务的计算机程序,包括个人即时通信客户端和企业即时通信客户端,其中,个人即时通信客户端是为个人用户提供互联网社交服务的计算机程序,企业即时通信客户端是为企业用户提供互联网社交服务的计算机程序。
7)统一资源定位符(URL,Uniform Resource Locator):是因特网的万维网服务程序上用于指定信息位置的表示方法。因特网上的可用资源可以用简单字符串来表示,这些字符串则被称为:统一资源定位符。也就是说,URL是由一串字符组成,这些字符可以是字母,数字和特殊符号。一个URL可以用多种方法来表现,例如:纸上的字迹,或者是用字符集编码的八位字节序列。URL的解释仅取决于所用字符的特性。在大多数URL方案中,都是使用URL不同部分的字符序列来代表因特网协议中所使用的八位字节序列。
8)本地预览内容:指通过调用浏览器对文件进行解析得到的文件内容,例如当即时通信客户端未处于锁定模式时,在接收到用户针对会话界面中任一文件的触发操作时,可以调用终端设备本地运行的浏览器对被触发的文件进行解析,并将解析结果渲染到文件预览界面中,从而可以在文件预览界面中展示被触发的文件的内容,也就是说,可以借助浏览器的能力实现文件的本地预览。
9)在线预览内容:指基于网盘程序的后台服务器发送的统一资源定位符获取的文件内容,例如当即时通信客户端处于锁定模式时,即时通信客户端调用浏览器对文件进行解析的操作会被拦截,从而导致本地预览失败。此时,可以转入在线预览流程,例如即时通信客户端可以基于网盘程序的后台服务器发送的URL,从网盘程序的后台服务器中获取被触发的文件的内容,并将所获取的文件内容展示在文件预览界面中,也就是说,可以通过基于URL进行访问的方式实现文件的在线预览。
以iOS系统为例,iOS16新增的锁定模式给用户带来了最强的安全保护,但同时限制了即时通信客户端(例如企业即时通信客户端)使用网络(Web)服务预览本地文件的能力,给用户的工作带来诸多不便。
针对上述技术问题,相关技术提供了以下两种解决方案:
1、将需要预览文件的应用程序(APP,APPlication)从锁定模式中排除:iOS系统的锁定模式可以选择特定的APP将其排除在锁定模式之外,进行这个操作相当于这个APP虽然解除了文件预览限制,但是其它受锁定模式保护的内容也将失效。这种做法不符合希望使用锁定模式保护信息安全的用户的期望。
2、由用户将文件转移到专用的APP中进行预览:例如用户可以将聊天中无法预览的文件转存至手机专用的文档类APP(例如Office软件)中进行预览。但是这种方式十分低效,影响用户的使用体验。
申请人在实施本申请实施例的过程中发现:网盘的文件预览功能是将用户存储在网盘中的内容直接通过网盘内部逻辑加载和显示在网页中,让用户可以不用下载文件即可查看文件内容的功能。此外,申请人还发现网盘的文件预览能力不会受到锁定模式的拦截,可以在锁定模式下正常预览文件,但是网盘原始的文件预览功能是只能预览用户上传到网盘中的文件。本申请实施例通过改造网盘的能力(将在下文进行具体说明),做到仅使用网盘的文件预览能力,而不需要向用户的网盘中保存文件,实现与本地直接预览相近的效果。
鉴于此,本申请实施例提供一种文件预览方法、装置、电子设备、计算机可读存储介质及计算机程序产品,能够在锁定模式下实现文件的预览。下面对本申请实施例提供的电子设备进行说明。本申请实施例提供的电子设备可以实施为终端设备,或者由服务器和终端设备协同实施。下面以由服务器和终端设备协同实施本申请实施例提供的文件预览方法为例进行说明。
示例的,参见图1,图1是本申请实施例提供的文件预览系统100的架构示意图,为实现支撑在锁定模式下实现文件的预览的应用,如图1所示,文件预览系统100包括:服务器200、服务器300、网络400以及终端设备500,其中,服务器200是终端设备500上运行的即时通信客户端510的后台服务器,服务器300是即时通信客户端510中集成的网盘程序的后台服务器,网络400可以是局域网或者广域网,又或者是二者的组合,终端设备500是用户关联的终端设备,在终端设备500上运行有即时通信客户端510,即时通信客户端510可以是个人即时通信客户端或者企业即时通信客户端。
在一些实施例中,以用户1为例,当接收到用户1针对终端设备500上安装的即时通信客户端510的图标的点击操作时,可以在终端设备500的屏幕上显示即时通信客户端510中用于即时通信会话的会话界面(包括点对点的单聊会话界面和至少3个用户组成的群组会话界面),其中,会话界面可以包括至少一个文件(例如用户1在会话界面中发送的文件、或者会话界面中的其他用户发送的文件)。当接收到用户1针对目标文件(例如至少一个文件中的文件1)的点击操作时,可以从会话界面跳转至目标文件的文件预览界面。此时,即时通信客户端510首先会尝试执行调用浏览器对目标文件进行解析的操作,并在尝试调用浏览器对目标文件进行解析的操作的期间,在文件预览界面中显示目标文件的预览内容正在加载中的标识(例如转圈的符号)。当即时通信客户端510检测到调用浏览器对目标文件进行解析的操作被拦截时(即本地预览失败),确定用户1开启了锁定模式,也就是说,即时通信客户端510当前处于锁定模式,则可以在文件预览界面中显示提示信息,例如“本地预览失败,正在尝试在线预览”,并转入在线预览的流程。
下面继续对在线浏览的流程进行说明。
在一些实施例中,当即时通信客户端510检测到用户1开启锁定模式后,可以通过网络400向服务器200发送针对目标文件的标识(例如目标文件的名称、编号等)的获取请求。服务器200在接收到即时通信客户端510发送的获取请求之后,可以将目标文件的标识通过网络400发送给即时通信客户端510。接着,即时通信客户端510可以将目标文件的标识通过网络400发送给服务器300,以使服务器300基于标识从服务器200中获取目标文件的在线预览内容。随后,服务器300可以生成对应目标文件的在线预览内容的统一资源定位符,并将所生成的统一资源定位符发送给即时通信客户端510。随后,即时通信客户端510可以基于服务器300发送的统一资源定位符获取目标文件的在线预览内容,并在文件预览界面中显示目标文件的在线预览内容,如此,实现了锁定模式下的文件预览,在没有舍弃锁定模式带来的安全保护的同时,给用户提供了与未开启锁定模式时一致的预览体验。
在另一些实施例中,本申请实施例还可以借助于云技术(Cloud Technology)实现,云技术是指在广域网或局域网内将硬件、软件、网络等系列资源统一起来,实现数据的计算、储存、处理和共享的一种托管技术。
云技术是基于云计算商业模式应用的网络技术、信息技术、整合技术、管理平台技术、以及应用技术等的总称,可以组成资源池,按需所用,灵活便利。云计算技术将变成重要支撑。技术网络系统的后台服务需要大量的计算、存储资源。
示例的,图1中的服务器200和服务器300可以是独立的物理服务器,也可以是多个物理服务器构成的服务器集群或者分布式系统,还可以是提供云服务、云数据库、云计算、云函数、云存储、网络服务、云通信、中间件服务、域名服务、安全服务、内容分发网络(CDN,Content Delivery Network)、以及大数据和人工智能平台等基础云计算服务的云服务器。终端设备500可以是智能手机、平板电脑、笔记本电脑、台式计算机、智能音箱、智能手表、车载终端等,但并不局限于此。终端设备500以及服务器200和服务器300可以通过有线或无线通信方式进行直接或间接地连接,本申请实施例中不做限制。
在一些实施例中,终端设备还可以通过运行各种计算机可执行指令、或计算机程序来实现本申请实施例提供的文件预览方法。举例来说,计算机可执行指令可以是微程序级的命令、机器指令或软件指令。计算机程序可以是操作系统中的原生程序或软件模块;可以是本地(Native)应用程序,即需要在操作系统中安装才能运行的程序,如即时通信APP;也可以是小程序,即只需要下载到浏览器环境中就可以运行的程序。总而言之,上述的计算机可执行指令可以是任意形式的指令,上述计算机程序可以是任意形式的应用程序、模块或插件。
下面继续对本申请实施例提供的电子设备的结构进行说明。以电子设备为终端设备为例,参见图2,图2是本申请实施例提供的电子设备600的结构示意图,图2所示的电子设备600包括:至少一个处理器610、存储器650、至少一个网络接口620和用户接口630。电子设备600中的各个组件通过总线系统640耦合在一起。可理解,总线系统640用于实现这些组件之间的连接通信。总线系统640除包括数据总线之外,还包括电源总线、控制总线和状态信号总线。但是为了清楚说明起见,在图2中将各种总线都标为总线系统640。
处理器610可以是一种集成电路芯片,具有信号的处理能力,例如通用处理器、数字信号处理器(DSP,Digital Signal Processor),或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件等,其中,通用处理器可以是微处理器或者任何常规的处理器等。
用户接口630包括使得能够呈现媒体内容的一个或多个输出装置631,包括一个或多个扬声器和/或一个或多个视觉显示屏。用户接口630还包括一个或多个输入装置632,包括有助于用户输入的用户接口部件,比如键盘、鼠标、麦克风、触屏显示屏、摄像头、其他输入按钮和控件。
存储器650可以是可移除的,不可移除的或其组合。示例性的硬件设备包括固态存储器,硬盘驱动器,光盘驱动器等。存储器650可选地包括在物理位置上远离处理器610的一个或多个存储设备。
存储器650包括易失性存储器或非易失性存储器,也可包括易失性和非易失性存储器两者。非易失性存储器可以是只读存储器(ROM,Read Only Memory),易失性存储器可以是随机存取存储器(RAM,Random Access Memory)。本申请实施例描述的存储器650旨在包括任意适合类型的存储器。
在一些实施例中,存储器650能够存储数据以支持各种操作,这些数据的示例包括程序、模块和数据结构或者其子集或超集,下面示例性说明。
操作系统651,包括用于处理各种基本系统服务和执行硬件相关任务的系统程序,例如框架层、核心库层、驱动层等,用于实现各种基础业务以及处理基于硬件的任务;
网络通信模块652,用于经由一个或多个(有线或无线)网络接口620到达其他计算设备,示例性的网络接口620包括:蓝牙、无线相容性认证(WiFi)、和通用串行总线(USB,Universal Serial Bus)等;
呈现模块653,用于经由一个或多个与用户接口630相关联的输出装置631(例如,显示屏、扬声器等)使得能够呈现信息(例如,用于操作外围设备和显示内容和信息的用户接口);
输入处理模块654,用于对一个或多个来自一个或多个输入装置632之一的一个或多个用户输入或互动进行检测以及翻译所检测的输入或互动。
在一些实施例中,本申请实施例提供的文件预览装置可以采用软件方式实现,图2示出了存储在存储器650中的文件预览装置655,其可以是程序和插件等形式的软件,包括以下软件模块:显示模块6551、发送模块6552、接收模块6553、获取模块6554、确定模块6555、解析模块6556和渲染模块6557,这些模块是逻辑上的,因此根据所实现的功能可以进行任意的组合或进一步拆分。需要指出的是,在图2中为了方便表达,一次性示出了上述所有模块,但是不应视为在文件预览装置655排除了可以只包括显示模块6551的实施,将在下文中说明各个模块的功能。
下面将结合本申请实施例提供的终端设备的示例性应用和实施,对本申请实施例提供的文件预览方法进行说明。
示例的,参见图3,图3是本申请实施例提供的文件预览方法的流程示意图,将结合图3示出的步骤进行说明。
需要说明的是,图3示出的方法可以由终端设备运行的各种形式的计算机程序执行,并不局限于即时通信客户端,例如还可以是上文所述的操作系统、软件模块、脚本和小程序等,因此下文中以即时通信客户端的示例不应视为对本申请实施例的限定。此外,为了表述方便,下文中不对终端设备和终端设备运行的即时通信客户端进行具体区分。
在步骤101中,显示即时通信客户端中的会话界面。
这里,会话界面的类型可以包括点对点的单聊会话界面和群组会话界面,其中,会话界面可以包括至少一个文件,例如第一账号在会话界面中发送的文件,或者会话界面中的其他账号发送的文件,第一账号是即时通信客户端中当前登录的账号,例如用户1注册的账号1,其他账号是会话界面中的其他成员注册的账号,例如用户2注册的账号2,也就是说,会话界面中的文件可以是用户1发送的,也可以是用户2发送的。
在一些实施例中,以即时通信客户端为企业即时通信客户端为例,在用户(例如用户1)关联的终端设备上安装有企业即时通信客户端,当接收到用户1针对企业即时通信客户端的图标的点击操作时,可以在终端设备的屏幕上显示企业即时通信客户端中的会话列表界面,其中,会话列表界面可以包括多个会话群组,例如在会话列表界面中可以显示有多个会话群组分别对应的群组标识(例如群组名称)。当接收到用户1针对多个会话群组中的任一会话群组的触发操作时,例如假设接收到用户1针对多个会话群组中的会话群组A的群组名称的点击操作时,可以从会话列表界面跳转至会话群组A的群组会话界面,在会话群组A的群组会话界面中可以显示有至少一个文件,例如可以是用户1发送的文件,或者会话群组A中的其他用户发送的文件。
需要说明的是,会话界面中的文件可以是以消息的方式进行显示的,因此也可以称为文件消息,即消息的类型是文件。
在步骤102中,响应于针对目标文件的触发操作,显示目标文件的文件预览界面。
这里,目标文件是至少一个文件中的任一文件。
在一些实施例中,以至少一个文件为3个文件为例,假设分别为文件1、文件2和文件3,当用户想查看文件2的内容时,可以点击会话界面中的文件2,例如当接收到用户针对会话界面中显示的文件2的点击操作时,可以从会话界面跳转至文件2的文件预览界面。
在另一些实施例中,参见图4,图4是本申请实施例提供的文件预览方法的流程示意图,如图4所示,在执行完图3示出的步骤102之后,还可以执行图4示出的步骤105和步骤106,将结合图4示出的步骤进行说明。
在步骤105中,执行调用浏览器对目标文件进行解析的操作。
在一些实施例中,由于即时通信客户端无法感知用户是否开启了锁定模式,因此,在接收到用户针对会话界面中的目标文件(即待预览文件)的点击操作之后,会首先尝试执行调用浏览器对目标文件进行解析的操作,也就是说,当接收到用户针对目标文件的点击操作时,即时通信客户端首先会进行本地预览的流程。
在另一些实施例中,在即时通信客户端尝试执行调用浏览器对目标文件进行解析的操作的期间,可以在文件预览界面中显示目标文件的预览内容正在加载中的标识,例如可以在文件预览界面中展示加载中的转圈符号,以提示用户目标文件的内容正在加载中,从而提升用户的使用体验。
在步骤106中,响应于调用浏览器对目标文件进行解析的操作被拦截,确定即时通信客户端处于锁定模式。
在一些实施例中,当即时通信客户端检测到调用浏览器对目标文件进行解析的操作被拦截时,即本地预览失败时,可以确定用户开启了锁定模式,也就是说,即时通信客户端当前处于锁定模式。
示例的,以即时通信客户端为企业即时通信客户端为例,当接收到用户针对会话界面中的目标文件(例如文件1)的点击操作时,企业即时通信客户端可以启动预览组件,并尝试使用Web服务的方式进行文件的预览,如果预览失败,可以根据返回的失败信息(例如回调函数中的信息)确定失败原因,例如当失败原因为调用浏览器对目标文件进行解析的操作被拦截时,可以确定企业即时通信客户端处于锁定模式,也就是说,是由于锁定模式导致本地预览失败。
在另一些实施例中,当调用浏览器对目标文件进行解析的操作未被拦截时,即用户没有开启锁定模式,也就是说,即时通信客户端未处于锁定模式,则可以将浏览器针对目标文件的解析结果渲染到文件预览界面中,以在文件预览界面中显示目标文件的本地预览内容。例如以目标文件为文档类文件为例,即时通信客户端可以调用浏览器通过前端代码解析文件内容,将其转化为对应的超文本标记语言(HTML,Hyper Text Markup Language)、层叠样式表(CCS,Cascading Style Sheets)、具有函数优先的轻量级,解释型或即时编译型的编程语言(JS,JavaScript)等代码,并在文件预览界面中进行呈现。
示例的,以即时通信客户端为企业即时通信客户端为例,当企业即时通信客户端能够调用浏览器对目标文件进行解析时,即用户没有开启锁定模式时,可以直接将浏览器针对目标文件的解析结果渲染到文件预览界面中,以在文件预览界面中显示目标文件的本地预览内容,即当企业即时通信客户端未处于锁定模式时,可以执行本地预览流程。
需要说明的是,本申请实施例中的本地预览内容是指在终端设备本地调用浏览器对目标文件进行解析得到的目标文件的内容,在线预览内容是指基于统一资源定位符从网盘程序的后台服务器中获取的目标文件的内容,本地预览内容和在线预览内容可以是相同的。
在步骤103中,响应于即时通信客户端处于锁定模式,在文件预览界面中显示提示信息。
这里,锁定模式至少用于拦截显示目标文件的本地预览内容,提示信息用于提示本地预览失败,正在尝试在线预览。
在一些实施例中,以即时通信客户端为企业即时通信客户端为例,当企业即时通信客户端检测到用户开启锁定模式时,可以在文件预览界面中显示诸如“本地预览失败,正在尝试在线预览”的提示文本以告知用户,并转入在线预览的流程。
在步骤104中,在文件预览界面中显示目标文件的在线预览内容。
在一些实施例中,即时通信客户端中可以集成有网盘程序,也就是说,网盘程序可以作为一个插件集成在即时通信客户端中,则在执行图3示出的步骤104之前,还可以执行图5示出的步骤107和步骤108,将结合图5示出的步骤进行说明。
在步骤107中,向网盘程序的后台服务器发送目标文件的标识,以使网盘程序的后台服务器基于标识从即时通信客户端的后台服务器中获取目标文件的在线预览内容。
在一些实施例中,即时通信客户端在向网盘程序的后台服务器发送目标文件的标识之前,还可以执行以下处理:向即时通信客户端的后台服务器发送针对目标文件的标识(token)的获取请求,其中,获取请求用于触发即时通信客户端的后台服务器向即时通信客户端返回目标文件的标识。
示例的,以即时通信客户端为企业即时通信客户端为例,在确定用户开启锁定模式后,企业即时通信客户端可以向企业即时通信客户端的后台服务器发送针对目标文件(例如文件1)的标识(例如文件1的token)的获取请求。企业即时通信客户端的后台服务器在接收到企业即时通信客户端发送的获取请求之后,可以将目标文件的标识返回给企业即时通信客户端。随后,企业即时通信客户端可以将目标文件的标识发送给网盘程序的后台服务器。网盘程序的后台服务器在接收到企业即时通信客户端发送的目标文件的标识之后,可以基于标识从企业即时通信客户端的后台服务器中获取目标文件的在线预览内容,例如文件1的在线预览内容。
在另一些实施例中,即时通信客户端在向网盘程序的后台服务器发送目标文件的标识之前,还可以执行以下处理:响应于即时通信客户端的后台服务器中未存储目标文件,向即时通信客户端的后台服务器发送目标文件。
示例的,以即时通信客户端为企业即时通信客户端为例,在线预览流程需要网盘程序的后台服务器从企业即时通信客户端的后台服务器中获取目标文件的在线预览内容,因此,当企业即时通信客户端的后台服务器中未存储目标文件时,企业即时通信客户端需要向企业即时通信客户端的后台服务器发送目标文件。
在一些实施例中,承接上述示例,即时通信客户端在响应于即时通信客户端的后台服务器中未存储目标文件之前,还可以执行以下处理:响应于满足设定的条件,确定即时通信客户端的后台服务器中未存储目标文件,其中,设定的条件可以包括以下之一:目标文件处于过期状态,目标文件是由区别于即时通信客户端的其他类型的即时通信客户端发送的,即时通信客户端中的即时通信会话是经过加密的。
示例的,以即时通信客户端为企业即时通信客户端为例,在正常情况下,企业即时通信客户端的后台服务器中是存储有目标文件的,但是当目标文件处于过期状态时、或者目标文件是由个人即时通信客户端发送的、又或者企业即时通信客户端中的即时通信会话是经过加密的,此时,企业即时通信客户端的后台服务器中就没有可供读取的目标文件,因此,企业即时通信客户端可以向企业即时通信客户端的后台服务器重新上传目标文件,以供后续网盘程序的后台服务器可以从企业即时通信客户端的后台服务器中获取目标文件的在线预览内容。
在步骤108中,接收网盘程序的后台服务器发送的统一资源定位符。
这里,统一资源定位符是网盘程序的后台服务器基于目标文件的在线预览内容生成的。
在一些实施例中,以目标文件为文件1为例,网盘程序的后台服务器在从即时通信客户端的后台服务器中获取到文件1的在线预览内容之后,可以生成对应文件1的在线预览内容的统一资源定位符(例如URL1),也就是说,URL1是文件1的在线预览内容在网盘程序的后台服务器中的地址。网盘程序的后台服务器在生成URL1之后,可以将URL1发送给即时通信客户端。即时通信客户端在接收到网盘程序的后台服务器发送的URL1之后,可以通过URL1访问网盘程序的后台服务器中的文件1的在线预览内容,如此,在不向网盘程序的后台服务器中存储目标文件的情况下,也能实现类似本地预览的效果。
在另一些实施例中,承接上述示例,即时通信客户端可以通过以下方式实现上述的步骤104:基于统一资源定位符从网盘程序的后台服务器中获取目标文件的在线预览内容,并在文件预览界面中显示目标文件的在线预览内容。
示例的,以即时通信客户端为企业即时通信客户端为例,企业即时通信客户端在接收到网盘程序的后台服务器发送的统一资源定位符(例如URL1)之后,可以首先对URL1进行域名解析,得到网盘程序的后台服务器的互联网协议(IP,Internet Protocol)地址,在获取到网盘程序的后台服务器的IP地址之后,企业即时通信客户端可以与网盘程序的后台服务器建立传输控制协议(TCP,Transmission Control Protocol)连接,包括企业即时通信客户端向网盘程序的后台服务器发送同步(SYN)报文,网盘程序的后台服务器回复同步/应答(SYN+ACK)报文,最后企业即时通信客户端再回复应答(ACK)报文,完成三次握手过程。在TCP连接建立之后,企业即时通信客户端可以向网盘程序的后台服务器发送超文本传输协议(HTTP,Hypertext Transfer Protocol)请求报文,其中,包括请求方法、路径、协议版本等信息,以及请求头部信息等。网盘程序的后台服务器在接收到企业即时通信客户端发送的请求后,会从服务器文件系统或者处理逻辑中获取到数据(例如文件1的在线预览内容),生成HTTP响应报文,并将其返回给企业即时通信客户端。企业即时通信客户端在接收到响应报文后,会对HTML文档进行解析,并构建文档对象模型(DOM,Document ObjectModel)树、CSS树、渲染树等,最终可以在文件预览界面中将文件1的在线预览内容呈现给用户。
需要说明的是,上述域名的解析、与网盘程序的后台服务器建立TCP连接、以及HTML文档的解析过程等可以是由企业即时通信客户端调用浏览器实现的。
在另一些实施例中,在线预览内容可以是目标文件中与第一账号的权限匹配的部分内容(例如目标文件中某个章节的内容),第一账号是即时通信客户端中当前登录的账号,且在即时通信客户端中集成有网盘程序,则即时通信客户端在文件预览界面中显示目标文件的在线预览内容之前,还可以执行以下处理:向网盘程序的后台服务器发送目标文件的标识和第一账号,以使网盘程序的后台服务器基于标识从即时通信客户端的后台服务器中查找到目标文件,并获取目标文件中与第一账号的权限(例如查阅权限)匹配的部分内容;接收网盘程序的后台服务器发送的统一资源定位符(例如URL2),其中,统一资源定位符是网盘程序的后台服务器基于目标文件的部分内容生成的。
示例的,以即时通信客户端为企业即时通信客户端为例,在企业即时通信客户端中登录有第一账号(例如用户1注册的账号1),企业即时通信客户端可以将目标文件(例如文件1)的标识和第一账号发送给网盘程序的后台服务器。网盘程序的后台服务器在接收到企业即时通信客户端发送的目标文件的标识和第一账号之后,可以在企业即时通信客户端的后台服务器中查找与标识对应的文件(即文件1),并在查找到文件1之后,获取文件1中与第一账号的权限匹配的部分内容,例如文件1中第一章节的内容,即第一账号只有查看文件1的第一章节的内容的权限。网盘程序的后台服务器在从企业即时通信客户端的后台服务器中获取到文件1中与第一账号的权限匹配的部分内容之后,可以生成对应文件1中与第一账号的权限匹配的部分内容的统一资源定位符(例如URL2),也就是说,URL2是文件1中与第一账号的权限匹配的部分内容在网盘程序的后台服务器中的地址。随后,网盘程序的后台服务器可以将生成的URL2发送给企业即时通信客户端,如此,企业即时通信客户端可以通过URL2访问网盘程序的后台服务器中存储的文件1中与第一账号的权限匹配的部分内容,实现在锁定模式下的文件预览,并且在文件预览界面中显示的文件内容是与账号的权限相匹配的,提升了用户的使用体验。
在一些实施例中,承接上述示例,还可以通过以下方式实现上述的步骤104:基于统一资源定位符从网盘程序的后台服务器中获取目标文件的部分内容,并在文件预览界面中显示目标文件的部分内容。
示例的,以即时通信客户端为企业即时通信客户端为例,在企业即时通信客户端中登录有第一账号(例如用户1注册的账号1),企业即时通信客户端在接收到网盘程序的后台服务器返回的统一资源定位符(例如URL2)之后,可以通过URL2访问在网盘程序的后台服务器中存储的目标文件(例如文件1)中与第一账号的权限匹配的部分内容,例如文件1中第一章节的内容。
需要说明的是,企业即时通信客户端基于URL2访问网盘程序的后台服务器中目标文件的部分内容的过程,与上述基于URL1访问网盘程序的后台服务器中目标文件的完整内容的过程类似,可以参考上述基于URL1访问网盘程序的后台服务器中目标文件的完整内容的过程实现,本申请实施例对此不做具体限定。
在另一些实施例中,还可以通过以下方式实现上述的步骤104:在文件预览界面中,显示目标文件中与第一账号的权限匹配的部分内容,其中,第一账号是即时通信客户端中当前登录的账号。
示例的,以即时通信客户端为企业即时通信客户端为例,在企业即时通信客户端中登录有第一账号,例如用户1注册的账号1,可以获取第一账号的查阅权限,并在文件预览界面中显示目标文件(例如文件1)中与第一账号的查阅权限匹配的部分内容。也就是说,即使网盘程序的后台服务器从企业即时通信客户端的后台服务器中获取的是目标文件的完整内容,在文件预览界面中也只是仅仅显示与第一账号的查询权限匹配的部分内容,从而避免信息的泄露,例如避免了用户1看到文件1中自己没有权限查看的内容。
在一些实施例中,即时通信客户端还可以执行以下处理:响应于目标文件的在线预览内容的显示时长达到(即大于或者等于)显示时长阈值(例如3分钟),在文件预览界面中取消显示目标文件的在线预览内容。
示例的,以即时通信客户端为企业即时通信客户端为例,当企业即时通信客户端检测到目标文件(例如文件1)的在线预览内容的显示时长达到显示时长阈值时,可以在文件预览界面中取消显示目标文件的在线预览内容,并从文件预览界面跳转回会话界面。
需要说明的是,不同文件的在线预览内容在文件预览界面中能够显示的最大时长可以是相同的,例如每个文件的在线预览内容在文件预览界面中最多能够显示3分钟;当然,不同文件的在线预览内容在文件预览界面中能够显示的最大时长也可以是不同的,例如越大的文件,文件的在线预览内容在文件预览界面中能够显示的最大时长就越长(例如5分钟);越小的文件,文件的在线预览内容在文件预览界面中能够显示的最大时长就越短(例如2分钟),本申请实施例对此不做具体限定。
本申请实施例提供的文件预览方法,当检测到即时通信客户端处于锁定模式时,转入在线预览流程,在文件预览界面中显示目标文件的在线预览内容,如此,实现了锁定模式下的文件预览,也就是说,能够在即时通信客户端继续受到锁定模式带来的安全保护的同时,在即时通信客户端中实现文件的预览,即在没有舍弃锁定模式带来的安全保护的同时,为用户提供了在没有开启锁定模式时一致的预览体验。
下面,将说明本申请实施例在一个实际的应用场景中的示例性应用。
以iOS系统为例,iOS16新增的锁定模式给用户带来了最强的安全保护,但同时限制了企业即时通信客户端使用Web服务预览本地文件的能力,给用户的工作带来诸多不便。
申请人在实施本申请实施例的过程中发现:网盘的文件预览功能是将用户存储在网盘中的内容直接通过网盘内部逻辑加载和显示在网页中,让用户可以不用下载文件即可查看文件内容的功能。此外,申请人还发现网盘的文件预览能力不会受到锁定模式的拦截,可以在锁定模式下正常预览文件,但是网盘原始的文件预览功能是只能预览用户上传到网盘中的文件。针对上述问题,本申请实施例通过改造网盘的能力,做到仅使用网盘的文件预览能力,而不需要向用户的网盘中保存文件,从而实现与本地直接预览相近的效果。
鉴于此,本申请实施例提供一种文件预览方法,通过对网盘的能力进行改造,实现在企业即时通信客户端下开启锁定模式时依然可以进行本地文件的预览,让用户的预览体验与未开启锁定模式时一致,并且用户的信息可以继续受到锁定模式的保护。
下面对本申请实施例提供的文件预览方法进行具体说明。
示例的,参见图6,图6是本申请实施例提供的文件预览方法的应用场景示意图,如图6所示,首先,由于企业即时通信客户端无法感知到用户已经开启了锁定模式,当接收到用户针对会话界面中某一文件的点击操作时,企业即时通信客户端还是会尝试使用Web服务进行文件预览,此时表现为在页面601(即文件预览界面)中展示加载中的转圈符号602。接下来,企业即时通信客户端会立即感知到由于系统拦截导致本地预览失败,转入网盘在线预览流程,此时,会为页面601添加诸如“本地预览失败,正在尝试在线预览”的提示文本603以告知用户,同时转入网盘在线预览逻辑。最后预览成功,用户可以在页面601中正常查看被点击的文件的预览内容604。
下面将继续结合图7对本申请实施例提供的文件预览方法进行说明。
示例的,参见图7,图7是本申请实施例提供的文件预览方法的流程示意图,将结合图7示出的步骤进行说明。
在步骤201中,在接收到针对消息界面中的文件消息的点击操作时,启动预览组件。
在一些实施例中,绝大多数的文件预览操作是从企业即时通信客户端的消息界面(对应于上述的会话界面)中产生,例如用户可以点击自己发送的文件或者接收到的其他用户发送的文件进行预览。
在步骤202中,预览组件尝试使用文件预览Web服务进行本地预览。
这里,文件预览Web服务主要用于负责提供企业即时通信客户端原生的文件预览能力、以及在锁定模式下使用Web服务的预览能力。
在步骤203中,文件预览Web服务向预览组件返回预览失败信息。
这里,预览组件是指展示文件预览内容的容器组件,例如在接收到用户针对消息界面中的文件消息的点击操作时,可以启用预览组件,预览组件首先会尝试传统的预览流程,即使用Web服务的方式进行预览,当该流程失败后,企业即时通信客户端通过分析失败信息,判断是由于锁定模式的拦截导致本地预览失败,则进入网盘在线预览流程。
在步骤204中,预览组件向企业即时通信客户端的后台服务器发送文件token获取请求。
这里,企业即时通信客户端的后台服务器主要用于负责存取文件,通过请求向企业即时通信客户端返回文件信息,或者由企业即时通信客户端上传文件至企业即时通信客户端的后台服务器。
在步骤205中,企业即时通信客户端的后台服务器向预览组件返回文件token。
在步骤206中,预览组件向在线预览服务发送URL获取请求。
在步骤207中,在线预览服务向预览组件返回URL。
这里,在线预览服务负责提供本申请实施例的在不向用户的网盘存储文件的情况下预览文件的能力,例如企业即时通信客户端中集成的网盘程序的后台服务器(简称为网盘后台)在接收到预览组件发送的文件的标识(token)之后,可以基于文件token从企业即时通信客户端的后台服务器中获取对应的文件内容,并生成一个URL,从而实现在不向用户的网盘存储文件的情况下预览文件的能力。
在步骤208中,预览组件使用文件预览Web服务通过URL预览文件。
在步骤209中,预览组件展示预览界面。
在一些实施例中,在进入网盘在线预览流程后,企业即时通信客户端需要在企业即时通信客户端的后台服务器中准备好文件数据,并使用文件标识(例如文件token)向网盘后台发送请求,让网盘后台基于文件token从企业即时通信客户端的后台服务器中获取对应的文件内容,生成并返回一个URL,预览组件再使用这个URL进行文件的预览。
下面继续结合图8对常规预览转为锁定模式下的网盘在线预览的实现过程进行说明。
示例的,参见图8,图8是本申请实施例提供的文件预览方法的流程示意图,将结合图8示出的步骤进行说明。
在步骤301中,接收到针对文件消息的点击操作。
在步骤302中,尝试原生预览能力,如果预览成功,则执行步骤303;如果预览失败,则执行步骤304。
在步骤303中,展示预览内容。
在步骤304中,根据失败返回的错误信息判断是否为被拦截,如果是,则执行步骤305;如果否,则执行步骤306。
在步骤305中,进入锁定模式下的预览逻辑。
在一些实施例中,企业即时通信客户端的常规文件预览能力(或称原生预览能力)是使用iOS系统原生的网页视图(例如wkWebView)对文件的预览能力,企业即时通信客户端可以根据其回调函数中的信息判断是否为锁定模式导致的预览失败,如果是则开始锁定模式下的网盘在线预览流程。
示例的,在接收到用户针对消息界面中文件消息的点击操作时,企业即时通信客户端可以通过传入被点击的文件消息,启动预览组件,并尝试使用原生预览能力预览文件,如果此时预览失败,再根据返回的失败信息判断失败原因,当原因为来自锁定模式的拦截时,进入网盘在线预览流程。
在步骤306中,执行其他处理策略。
这里,可以在页面中展示预览失败的文案以告知用户。
下面继续结合图9对文件消息获取策略的实现过程进行说明。
示例的,参见图9,图9是本申请实施例提供的文件预览方法的流程示意图,将结合图9示出的步骤进行说明。
在步骤401中,判断是否因为文件已过期或其他原因导致后台无文件消息数据,若是,则执行步骤402;若否,则执行步骤403。
在步骤402中,上传文件。
在步骤403中,结束流程。
在一些实施例中,网盘在线文件预览能力要求读取企业即时通信客户端的后台服务器存储的文件信息来预览文件,但是当消息中的文件过期、或者文件消息来自企业即时通信客户端与个人即时通信客户端的互通消息,则此时企业即时通信客户端的后台服务器就没有可供读取的合法文件信息,这些情况下还需要企业即时通信客户端进行文件的重新上传。
示例的,在进入网盘在线预览流程后,企业即时通信客户端为了在线预览服务可以顺利读取到存储在企业即时通信客户端的后台服务器的文件数据,需要考虑各种情况。在正常聊天消息中,企业即时通信客户端的后台服务器中是存储有文件消息中的文件内容的。但是当文件消息过期、非传统聊天、或者聊天加密导致企业即时通信客户端的后台服务器没有了文件信息时,就需要企业即时通信客户端通过重新上传本地的文件,以保证企业即时通信客户端的后台服务器存有文件数据供网盘后台读取。
下面继续结合图10对网盘在线预览能力的实现过程进行说明。
示例的,参见图10,图10是本申请实施例提供的文件预览方法的流程示意图,将结合图10示出的步骤进行说明。
在步骤501中,客户端发送请求。
在步骤502中,在线预览服务根据信息从企业即时通信客户端的后台服务器数据中读取文件内容,并生成URL。
在步骤503中,客户端建立网页视图,并访问URL。
在一些实施例中,在企业即时通信客户端的后台服务器中准备好文件数据之后,企业即时通信客户端就可以通过请求通知网盘后台读取所需文件信息,并生成一个URL供企业即时通信客户端进行预览。
示例的,在准备好后台文件数据后,企业即时通信客户端就可以通过请求通知网盘后台,通过上传需要预览的文件相关信息(例如文件名称、文件大小等信息),让网盘后台可以去企业即时通信客户端的后台服务器中读取对应的文件内容,并生成一个在线预览URL,提供给企业即时通信客户端打开,使文件可以成功预览。
需要说明的是,本申请实施例提供的技术方案可以应用于锁定模式导致的文件预览失败以外的所有失败情况。由于用户环境因素、系统组件稳定性因素,会导致本地预览文件出现各种原因的失败,而本申请实施例提供的技术方案的本质就是将在线预览能力作为本地预览能力失败时的后备能力,完全可以实现进一步提升用户的使用体验,增强组件功能稳定性的目的。
综上所述,本申请实施例提供的技术方案具有以下有益效果:通过本申请实施例提供的技术方案,解决了在锁定模式下,在企业即时通信客户端中无法正常预览文件的问题,并且做到了文件预览效果与原预览功能效果相近、使用流畅,为用户提供了与没有开启锁定模式时统一的使用体验,同时也没有舍弃锁定模式带来的安全保护。
下面继续说明本申请实施例提供的文件预览装置655的实施为软件模块的示例性结构,在一些实施例中,如图2所示,存储在存储器650的文件预览装置655中的软件模块可以包括:显示模块6551。
显示模块6551,用于显示即时通信客户端中的会话界面,其中,会话界面包括至少一个文件;显示模块6551,还用于响应于针对目标文件的触发操作,显示目标文件的文件预览界面,其中,目标文件是至少一个文件中的任一文件;显示模块6551,还用于响应于即时通信客户端处于锁定模式,在文件预览界面中显示提示信息,其中,锁定模式至少用于拦截显示目标文件的本地预览内容,提示信息用于提示本地预览失败,以及在文件预览界面中显示目标文件的在线预览内容。
在一些实施例中,即时通信客户端中集成有网盘程序;文件预览装置655还包括发送模块6552和接收模块6553,其中,发送模块6552,用于显示模块6551在文件预览界面中显示目标文件的在线预览内容之前,向网盘程序的后台服务器发送目标文件的标识,以使网盘程序的后台服务器基于标识从即时通信客户端的后台服务器中获取目标文件的在线预览内容;接收模块6553,用于接收网盘程序的后台服务器发送的统一资源定位符,其中,统一资源定位符是网盘程序的后台服务器基于目标文件的在线预览内容生成的。
在一些实施例中,发送模块6552在向网盘程序的后台服务器发送目标文件的标识之前,还用于向即时通信客户端的后台服务器发送针对目标文件的标识的获取请求,其中,获取请求用于触发即时通信客户端的后台服务器向即时通信客户端返回目标文件的标识。
在一些实施例中,文件预览装置655还包括获取模块6554,用于基于统一资源定位符从网盘程序的后台服务器中获取目标文件的在线预览内容;显示模块6551,还用于在文件预览界面中显示目标文件的在线预览内容。
在一些实施例中,发送模块6552在向网盘程序的后台服务器发送目标文件的标识之前,还用于响应于即时通信客户端的后台服务器中未存储目标文件,向即时通信客户端的后台服务器发送目标文件。
在一些实施例中,文件预览装置655还包括确定模块6555,用于响应于满足设定的条件,确定即时通信客户端的后台服务器中未存储目标文件,其中,设定的条件包括以下之一:目标文件处于过期状态,目标文件是由区别于即时通信客户端的其他类型的即时通信客户端发送的,即时通信客户端中的即时通信会话是经过加密的。
在一些实施例中,在线预览内容是目标文件中与第一账号的权限匹配的部分内容,第一账号是即时通信客户端中当前登录的账号,即时通信客户端中集成有网盘程序;发送模块6552,还用于显示模块6551在文件预览界面中显示目标文件的在线预览内容之前,执行以下处理:向网盘程序的后台服务器发送目标文件的标识和第一账号,以使网盘程序的后台服务器基于标识从即时通信客户端的后台服务器中查找到目标文件,并获取目标文件中与第一账号的权限匹配的部分内容;接收模块6553,还用于接收网盘程序的后台服务器发送的统一资源定位符,其中,统一资源定位符是网盘程序的后台服务器基于部分内容生成的。
在一些实施例中,获取模块6554,还用于基于统一资源定位符从网盘程序的后台服务器中获取部分内容;显示模块6551,还用于在文件预览界面中显示部分内容。
在一些实施例中,文件预览装置655还包括解析模块6556,用于执行调用浏览器对目标文件进行解析的操作;确定模块6555,还用于响应于调用浏览器对目标文件进行解析的操作被拦截,确定即时通信客户端处于锁定模式。
在一些实施例中,文件预览装置655还包括渲染模块6557,用于响应于调用浏览器对目标文件进行解析的操作未被拦截,将浏览器针对目标文件的解析结果渲染到文件预览界面中,以在文件预览界面中显示目标文件的在线预览内容。
在一些实施例中,显示模块6551,还用于在执行调用浏览器对目标文件进行解析的操作的期间,在文件预览界面中显示目标文件的预览内容正在加载中的标识。
在一些实施例中,显示模块6551,还用于在文件预览界面中,显示目标文件中与第一账号的权限匹配的部分内容,其中,第一账号是即时通信客户端中当前登录的账号。
在一些实施例中,显示模块6551,还用于响应于目标文件的在线预览内容的显示时长达到时长阈值,在文件预览界面中取消显示目标文件的在线预览内容。
需要说明的是,本申请实施例装置的描述,与上述方法实施例的描述是类似的,具有同方法实施例相似的有益效果,因此不做赘述。对于本申请实施例提供的文件预览装置中未尽的技术细节,可以根据图3、图4、或图5任一附图的说明而理解。
本申请实施例提供了一种计算机程序产品,该计算机程序产品包括计算机程序或计算机可执行指令,该计算机程序或计算机可执行指令存储在计算机可读存储介质中。计算机设备的处理器从计算机可读存储介质读取该计算机可执行指令,处理器执行该计算机可执行指令,使得该计算机设备执行本申请实施例上述的文件预览方法。
本申请实施例提供一种存储有计算机可执行指令的计算机可读存储介质,其中存储有计算机可执行指令,当计算机可执行指令被处理器执行时,将引起处理器执行本申请实施例提供的文件预览方法,例如,如图3、图4、或图5示出的文件预览方法。
在一些实施例中,计算机可读存储介质可以是FRAM、ROM、PROM、EPROM、EEPROM、闪存、磁表面存储器、光盘、或CD-ROM等存储器;也可以是包括上述存储器之一或任意组合的各种设备。
在一些实施例中,可执行指令可以采用程序、软件、软件模块、脚本或代码的形式,按任意形式的编程语言(包括编译或解释语言,或者声明性或过程性语言)来编写,并且其可按任意形式部署,包括被部署为独立的程序或者被部署为模块、组件、子例程或者适合在计算环境中使用的其它单元。
作为示例,可执行指令可被部署为在一个电子设备上执行,或者在位于一个地点的多个电子设备上执行,又或者,在分布在多个地点且通过通信网络互连的多个电子设备上执行。
以上所述,仅为本申请的实施例而已,并非用于限定本申请的保护范围。凡在本申请的精神和范围之内所作的任何修改、等同替换和改进等,均包含在本申请的保护范围之内。
Claims (17)
1.一种文件预览方法,其特征在于,所述方法包括:
显示即时通信客户端中的会话界面,其中,所述会话界面包括至少一个文件;
响应于针对目标文件的触发操作,显示所述目标文件的文件预览界面,其中,所述目标文件是所述至少一个文件中的任一文件;
响应于所述即时通信客户端处于锁定模式,在所述文件预览界面中显示提示信息,其中,所述锁定模式至少用于拦截显示所述目标文件的本地预览内容,所述提示信息用于提示本地预览失败,以及
在所述文件预览界面中显示所述目标文件的在线预览内容。
2.根据权利要求1所述的方法,其特征在于,
所述即时通信客户端中集成有网盘程序;
在所述文件预览界面中显示所述目标文件的在线预览内容之前,所述方法还包括:
向所述网盘程序的后台服务器发送所述目标文件的标识,以使所述网盘程序的后台服务器基于所述标识从所述即时通信客户端的后台服务器中获取所述目标文件的在线预览内容;
接收所述网盘程序的后台服务器发送的统一资源定位符,其中,所述统一资源定位符是所述网盘程序的后台服务器基于所述目标文件的在线预览内容生成的。
3.根据权利要求2所述的方法,其特征在于,在向所述网盘程序的后台服务器发送所述目标文件的标识之前,所述方法还包括:
响应于所述即时通信客户端的后台服务器中未存储所述目标文件,向所述即时通信客户端的后台服务器发送所述目标文件。
4.根据权利要求3所述的方法,其特征在于,在响应于所述即时通信客户端的后台服务器中未存储所述目标文件之前,所述方法还包括:
响应于满足设定的条件,确定所述即时通信客户端的后台服务器中未存储所述目标文件,其中,所述设定的条件包括以下之一:所述目标文件处于过期状态,所述目标文件是由区别于所述即时通信客户端的其他类型的即时通信客户端发送的,所述即时通信客户端中的即时通信会话是经过加密的。
5.根据权利要求2所述的方法,其特征在于,在向所述网盘程序的后台服务器发送所述目标文件的标识之前,所述方法还包括:
向所述即时通信客户端的后台服务器发送针对所述目标文件的标识的获取请求,其中,所述获取请求用于触发所述即时通信客户端的后台服务器向所述即时通信客户端返回所述目标文件的标识。
6.根据权利要求2所述的方法,其特征在于,所述在所述文件预览界面中显示所述目标文件的在线预览内容,包括:
基于所述统一资源定位符从所述网盘程序的后台服务器中获取所述目标文件的在线预览内容,并在所述文件预览界面中显示所述目标文件的在线预览内容。
7.根据权利要求1至6任一项所述的方法,其特征在于,
所述在线预览内容是所述目标文件中与第一账号的权限匹配的部分内容,所述第一账号是所述即时通信客户端中当前登录的账号,所述即时通信客户端中集成有网盘程序;
在所述文件预览界面中显示所述目标文件的在线预览内容之前,所述方法还包括:
向所述网盘程序的后台服务器发送所述目标文件的标识和所述第一账号,以使所述网盘程序的后台服务器基于所述标识从所述即时通信客户端的后台服务器中查找到所述目标文件,并获取所述目标文件中与所述第一账号的权限匹配的部分内容;
接收所述网盘程序的后台服务器发送的统一资源定位符,其中,所述统一资源定位符是所述网盘程序的后台服务器基于所述部分内容生成的。
8.根据权利要求7所述的方法,其特征在于,所述在所述文件预览界面中显示所述目标文件的在线预览内容,包括:
基于所述统一资源定位符从所述网盘程序的后台服务器中获取所述部分内容,并在所述文件预览界面中显示所述部分内容。
9.根据权利要求1至8任一项所述的方法,其特征在于,在响应于所述即时通信客户端处于锁定模式之前,所述方法还包括:
执行调用浏览器对所述目标文件进行解析的操作;
响应于调用浏览器对所述目标文件进行解析的操作被拦截,确定所述即时通信客户端处于锁定模式。
10.根据权利要求9所述的方法,其特征在于,所述方法还包括:
响应于调用浏览器对所述目标文件进行解析的操作未被拦截,将所述浏览器针对所述目标文件的解析结果渲染到所述文件预览界面中,以在所述文件预览界面中显示所述目标文件的在线预览内容。
11.根据权利要求9所述的方法,其特征在于,所述方法还包括:
在执行调用浏览器对所述目标文件进行解析的操作的期间,在所述文件预览界面中显示所述目标文件的预览内容正在加载中的标识。
12.根据权利要求1至6任一项所述的方法,其特征在于,所述在所述文件预览界面中显示所述目标文件的在线预览内容,包括:
在所述文件预览界面中,显示所述目标文件中与第一账号的权限匹配的部分内容,其中,所述第一账号是所述即时通信客户端中当前登录的账号。
13.根据权利要求1至11任一项所述的方法,其特征在于,所述方法还包括:
响应于所述目标文件的在线预览内容的显示时长达到时长阈值,在所述文件预览界面中取消显示所述目标文件的在线预览内容。
14.一种文件预览装置,其特征在于,所述装置包括:
显示模块,用于显示即时通信客户端中的会话界面,其中,所述会话界面包括至少一个文件;
所述显示模块,还用于响应于针对目标文件的触发操作,显示所述目标文件的文件预览界面,其中,所述目标文件是所述至少一个文件中的任一文件;
所述显示模块,还用于响应于所述即时通信客户端处于锁定模式,在所述文件预览界面中显示提示信息,其中,所述锁定模式至少用于拦截显示所述目标文件的本地预览内容,所述提示信息用于提示本地预览失败,以及在所述文件预览界面中显示所述目标文件的在线预览内容。
15.一种电子设备,其特征在于,包括:
存储器,用于存储可执行指令;
处理器,用于执行所述存储器中存储的可执行指令时,实现权利要求1至13任一项所述的文件预览方法。
16.一种计算机可读存储介质,存储有计算机可执行指令,其特征在于,所述计算机可执行指令被处理器执行时,实现权利要求1至13任一项所述的文件预览方法。
17.一种计算机程序产品,包括计算机程序或计算机可执行指令,其特征在于,所述计算机程序或计算机可执行指令被处理器执行时,实现权利要求1至13任一项所述的文件预览方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202310822335.0A CN116955294A (zh) | 2023-07-05 | 2023-07-05 | 文件预览方法、装置、电子设备及存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202310822335.0A CN116955294A (zh) | 2023-07-05 | 2023-07-05 | 文件预览方法、装置、电子设备及存储介质 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN116955294A true CN116955294A (zh) | 2023-10-27 |
Family
ID=88457574
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202310822335.0A Pending CN116955294A (zh) | 2023-07-05 | 2023-07-05 | 文件预览方法、装置、电子设备及存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN116955294A (zh) |
-
2023
- 2023-07-05 CN CN202310822335.0A patent/CN116955294A/zh active Pending
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US9954855B2 (en) | Login method and apparatus, and open platform system | |
US10079854B1 (en) | Client-side protective script to mitigate server loading | |
US8321681B2 (en) | Managing user accounts | |
EP2842072B1 (en) | Retrieving content from website through sandbox | |
US10069832B2 (en) | Ephemeral applications | |
US11797636B2 (en) | Intermediary server for providing secure access to web-based services | |
US10911426B2 (en) | Custom authenticator for enterprise web application | |
EP2771803B1 (en) | File fetch from a remote client device | |
US9641575B2 (en) | Method for sharing multimedia content between two users | |
US20140007117A1 (en) | Methods and apparatus for modifying software applications | |
US11405363B2 (en) | File upload control for client-side applications in proxy solutions | |
CN112637361B (zh) | 一种页面代理方法、装置、电子设备及存储介质 | |
JP2014534498A (ja) | JavaScriptを保護する装置、方法及びコンピューター可読性記憶媒体 | |
Bao et al. | Cross-site scripting attacks on android hybrid applications | |
US11516279B2 (en) | Systems and methods for accessing multiple resources via one identifier | |
US9942267B1 (en) | Endpoint segregation to prevent scripting attacks | |
CA2938293A1 (en) | Control program for accessing browser data and for controlling appliance | |
US20190098045A1 (en) | Browser injection prevention method, browser client and apparatus | |
CN112836186A (zh) | 一种页面控制方法及装置 | |
CN116955294A (zh) | 文件预览方法、装置、电子设备及存储介质 | |
US10044728B1 (en) | Endpoint segregation to prevent scripting attacks | |
CN113472752B (zh) | 一种权限处理方法、装置、电子设备及存储介质 | |
CN118353694A (zh) | 应用h5的一键登录方法、系统、设备及存储介质 | |
Kinnunen | Designing a Node. js full stack web application | |
CN112948727A (zh) | 基于WebView的数据注入方法、装置、设备及存储介质 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication |