CN108270803B - 通过网页技术实现网络文件与桌面应用传输的方法和系统 - Google Patents
通过网页技术实现网络文件与桌面应用传输的方法和系统 Download PDFInfo
- Publication number
- CN108270803B CN108270803B CN201611253449.4A CN201611253449A CN108270803B CN 108270803 B CN108270803 B CN 108270803B CN 201611253449 A CN201611253449 A CN 201611253449A CN 108270803 B CN108270803 B CN 108270803B
- Authority
- CN
- China
- Prior art keywords
- data
- file
- desktop
- web
- application
- 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.)
- Active
Links
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/01—Protocols
- H04L67/02—Protocols based on web technology, e.g. hypertext transfer protocol [HTTP]
-
- 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
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/10—File systems; File servers
- G06F16/18—File system types
- G06F16/182—Distributed file systems
- G06F16/1824—Distributed file systems implemented using Network-attached Storage [NAS] architecture
- G06F16/183—Provision of network file services by network file servers, e.g. by using NFS, CIFS
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/01—Protocols
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Data Mining & Analysis (AREA)
- Databases & Information Systems (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Human Computer Interaction (AREA)
- Information Transfer Between Computers (AREA)
Abstract
本发明公开了一种通过网页技术实现网络文件与桌面应用传输的方法,该方法包括:创建应用模块并嵌入到桌面应用中,然后初始化,其中,所述应用包括web渲染显示模块、数据监听模块和桌面通信模块;对页面进行渲染,并在桌面应用中显示;采集并分析用户在web页面中的操作,监听用户通过页面和服务器间的通信数据,截获其中包含文件请求的数据;根据所监听到的通信数据进行网络请求分析,针对获取文件的请求和对监听到的所述通信数据的分析,通知桌面通信模块接收服务器返回的文件数据以及接收进度;在接收到文件数据之后,存储文件;文件数据接受完成之后,通知桌面应用。此外,本发明还公开了一种通过网页技术实现网络文件与桌面应用传输的系统。
Description
技术领域
本发明涉及网络服务器与本地应用的数据交互技术领域,具体涉及一种通过网页技术实现网络文件与桌面应用传输的方法和系统。
背景技术
目前,桌面应用获得网络文件的主要方式通常是通过在桌面操作系统下进行软件界面的开发,然后用户通过该界面向网络服务器发起http请求,获得文件信息,进而下载数据。
而通过网页获得网络文件的方式一般是以浏览器为载体,通过浏览器的下载工具进行下载,例如,在网络文件服务器上有一批文件,需要分发给用户,每个文件有自己的属性和相关的描述存储在服务器的数据库中,在用户获得文件之后,可以保存在本地,也可以通过桌面软件进行进一步处理。
其中,现在最常用的处理方式大致为:(1)为了让用户明确看到网络文件,通过web管理,需要先开发一套web页面,让用户可以通过浏览器来访问web页面进行操作,同时通过浏览器进行下载;(2)为了让桌面用户处理文件,则需要在第一步之后,通过桌面导入文件。
或者,如专利号ZL200710147118.7的专利公开的那样:响应于客户端用户对使用某一目标桌面应用的请求,在Web服务器上启动桌面应用初始化处理,为用户确定一个适当的相应宿主服务器;在该相应宿主服务器上准备和提供桌面应用环境,并启动所述目标桌面应用;向客户端传送相应宿主服务器的地址,以便使客户端和相应宿主服务器之间进行桌面应用交互;以及响应于客户端用户结束桌面应用交互,在相应宿主服务器上停止并退出目标桌面应用直接在下载之后使用桌面应用进行文件处理,也就是现在通常使用的技术,即:(1’)在服务器端开发一套程序接口,用于获取文件服务器上列表和文件属性,以及下载文件;(2’)要在桌面应用中设计文件展示界面,然后通过服务器上的程序接口,获得文件列表,在界面上展示,然后在进行开发,通过接口来获得服务器上的文件,然后在文件下载到本地之后在进行处理。
虽然上述现有技术能够实现网络服务器与本地应用的数据交互操作,但是由于桌面软件和web操作有差别,因此如果要使用户体验上要达到一致,减少学习和习惯时间,则需要对应不同的桌面应用分别进行大量的重复开发;此外,由于使用协议的方式获取文件信息和下载文件,也会增加开发的时间和工作量。因此,由于现有技术存在上述缺陷,因而大大提高了开发和使用的成本,但使用灵活度却较低,适应性较差。
发明内容
针对上面提到的现有技术中存在的技术问题,本发明提出了一种通过网页技术实现网络文件与桌面应用传输的方法,以解决现有技术中的网络服务器与本地应用的数据交互中存在的开发和使用成本高,使用灵活性低和适应性差的技术问题。
本发明提出了一种通过网页技术实现网络文件与桌面应用传输的方法,该方法包括:
创建应用模块并嵌入到桌面应用中,然后初始化,其中,所述应用模块包括web渲染显示模块、数据监听模块和桌面通信模块;
通过web渲染显示模块对web服务器提供的页面进行渲染,并在桌面应用中显示;
通过所述数据监听模块采集并分析用户在web页面中的操作,监听用户通过web页面和web服务器之间进行的通信数据,截获其中包含文件请求的通信数据;对监听到的所述通信数据进行分析。其中,所述包含文件请求的数据包括:监听用户发送的数据请求和web服务器反馈的数据应答;
根据所监听到的通信数据进行网络请求分析,针对获取文件的请求和对监听到的所述通信数据的分析,通知桌面通信模块接收web服务器返回的文件数据,并通知桌面应用接收进度;
在接收到文件数据之后,将文件存储成实体文件,写入到存储介质;
文件数据接收完成之后,通知桌面应用。
可选地,初始化所述web渲染显示模块包括创建数据结构:网站初始化地址和操作系统信息。其中,所述网站初始化地址包括:服务器地址、页面路径以及采用https或http协议;所述操作系统信息包括:操作系统类型和版本。
可选地,初始化所述数据监听模块还包括:建立监听线程和建立监听列表。其中,所述监听线程为单独设立的一个线程;所述监听列表包括获取文件的通信方式,该通信方式可以是直接获取文件或获取文件流。
在上述方法中,初始化所述桌面通信模块还包括生成桌面应用的桌面通知模型操作。在该操作中,生成适用于不同的操作系统的桌面通知模型,并将桌面通信模块和桌面应用绑定。
其中,所述桌面通知模型包括:桌面应用接口,用于在不同的操作系统下与桌面应用对接,从而在收到通知的时候,能够通知桌面应用;以及数据监听模块接口,用于接收从数据监听模块发送来的经过分析的数据。
此外,本发明还提供一种通过网页技术实现网络文件与桌面应用传输的系统,该系统用于执行上述通过网页实现网络文件与桌面应用传输的方法。该系统包括:
web渲染显示单元,用于嵌入到桌面应用中,对web服务器提供的web页面进行渲染,并展示web页面;
数据监听单元,用于采集并分析用户在web页面中的操作,监听用户通过web页面和web服务器之间进行的通信数据,截获其中包含文件请求的数据以及web服务器交互的数据并进行分析;
下载单元,用于接收网络文件数据,保存成实体文件,写入存储介质;
通知单元,用于通知桌面应用,文件接收完成。
本发明的通过网页实现网络文件与桌面应用之间的传输方法使得在桌面应用开发中套用已经开发完成的web页面,避免了大量重复开发工作,实现了桌面应用操作和web操作的统一;此外,由于web开发的便捷性,以及界面的可控程度要好于桌面应用,因而大大降低了开发工作量,从提高了效率,降低了开发成本;此外,由于统一了桌面应用和web操作,同时也实现了软件界面的统一,因此提高了使用的灵活性和适应性。
附图说明
图1为本发明实施例的一种通过网页技术实现网络文件与桌面应用传输的方法的流程图;
图2为根据图1的本发明实施例的桌面通知模型M的结构示意图;
图3为一种通过网页技术实现网络文件与桌面应用传输的系统,该系统用于执行图1中的本发明实施例的一种通过网页技术实现网络文件与桌面应用传输的方法。
具体实施方式
为了使本发明的目的、技术方案和优点更加清楚,下面将结合附图对本发明作进一步地详细描述,下面所描述的实施例仅是本发明的实施例,其仅用于更加清楚地对本发明进行解释和说明,并不能以此来限定本发明的保护范围。
参考图1,本发明提供了一种通过网页技术实现网络文件与桌面应用传输的方法。如图1所示,该方法包括:
S101,创建应用模块并嵌入到桌面应用中,然后初始化,其中,所述应用模块包括web渲染显示模块、数据监听模块和桌面通信模块;
其中,web渲染显示模块的初始化包括:设置web服务器地址、网络传输协议以及显示方式;
数据监听模块的初始化包括:设置需要监听的web服务器的地址和监听的数据格式;
桌面通信模块的初始化包括按照初始化web渲染显示模块生成的操作系统信息,并与桌面应用建立通信连接;
S102,通过web渲染显示模块对服务器提供的页面进行渲染,并在桌面应用中显示;
S103,通过所述数据监听模块采集并分析用户在web页面中的操作,监听用户通过web页面和web服务器之间进行的通信数据,截获其中包含文件请求的通信数据;对监听到的所述通信数据进行分析。其中,所述包含文件请求的数据包括:监听用户发送的数据请求和服务器反馈的数据应答;
S104,根据所监听到的通信数据进行网络请求分析,针对获取文件的请求和对监听到的所述通信数据的分析,通知桌面通信模块接收服务器返回的文件数据,并通知桌面应用接收进度;
S105,在接收到文件数据之后,将文件存储成实体文件,写入到存储介质;
S106,文件数据接收完成之后,通知桌面应用。
在基于上述方法的另一实施方式中,初始化所述web应用模块包括创建数据结构:网站初始化地址和操作系统信息。其中,所述网站初始化地址包括:服务器地址、页面路径以及采用https或http协议;所述操作系统信息包括:操作系统类型和版本。
此外,初始化所述web应用模块还包括:建立监听线程和建立监听列表。其中,所述监听线程为单独设立的一个线程;所述监听列表仅包括获取文件的通信方式。该通信方式可以是直接获取文件或获取文件流。
可选地,通过网页实现网络文件与桌面应用传输的方法还包括初始化所述桌面通信模块还包括生成桌面应用的桌面通知模型操作。在该操作中,生成适用于不同的操作系统的桌面通知模型M,并将桌面通信模块和桌面应用绑定。
图2为本发明实施例中的桌面通信模块生成的桌面通知模型M的结构示意图,如图2所示,所述桌面通知模型M包括:桌面应用接口P1,用于在不同的操作系统下与桌面应用对接,从而在收到通知的时候,能够通知桌面应用;以及数据监听模块接口P2,用于接收从数据监听模块发送来的经过分析的数据。
此外,参见图3,本发明还提供一种通过网页技术实现网络文件与桌面应用传输系统S,该系统执行上述通过网页实现网络文件与桌面应用传输的方法。如图3所示,该系统包括:
U101,web渲染显示单元,用于嵌入到桌面应用中,对web服务器提供的web页面进行渲染,并展示web页面;
U102,数据监听单元,用于采集并分析用户在web页面中的操作,监听用户通过web页面和web服务器之间进行的通信数据,截获其中包含文件请求的数据以及web服务器交互的数据并进行分析;
U103,下载单元,用于接收网络文件数据,保存成实体文件,写入存储介质;
U104,通知单元,用于通知桌面应用,文件接收完成。
下面综合上述方法和系统结合在Windows操作系统中的具体操作来对本发明的方法和系统进行具体的描述。
首先,根据需求,先构建一个适用于Windows操作系统的桌面应用的桌面应用框架,该桌面应用为windows上的exe可执行文件。本发明中的所有操作,均嵌入与桌面应用框架。
下面为具体的工作步骤:
1、在exe可执行文件中嵌入本发明的展示单元,并指定展示单元需要显示的服务器地址;
2、通过展示单元渲染服务器提供的页面并在exe可执行文件中显示;
3、创建监听单元,并且指定特定的文件操作特征,监听单元创建线程,在线程中开始对展示单元和网络服务器的数据交互进行监听;
4、创建分析单元,对监听到的发送和接受的数据进行分析,同时创建下载协议分析线程,此时线程挂起;
5、创建文件下载单元,在文件下载单元中,创建线程池,根据应用并发大小,预准备几个到几十个下载线程,此时线程空转;
6、创建通知单元,桌面框架通过回调函数或消息机制,在接收到文件后通知桌面应用框架进行处理。
当用户进行操作时,各个单元的工作模式如下:
i)展示单元模拟一般的网络浏览器,展示web页面,操作/体验和普通浏览器相同,同时监听单元对用户的操作进行监听,并且将监听到的数据通知分析单元;
ii)分析单元对数据进行分析,如果符合发送的请求是向服务器获取文件的请求,则回复下载协议分析线程,将监听到的服务器返回数据,送入这个线程进行分析,如果发现服务器返回文件流,则通知下载单元;
iii)下载单元接收到文件下载信息,则从线程池中获得一个空转的下载线程,将服务器返回的文件流送入线程进行处理;下载线程接受文件流,并缓冲到内存中,当内存缓冲过大,就将内存中的数据写入硬盘,当文件流接收完成,将所有文件流写入硬盘,并且将下载线程恢复到空转状态,放入线程池;
iv)在文件下载完成后,通知模块,根据在创建时桌面框架指定的通知方式,通知桌面框架进行处理。
上面的具体实例虽然是在Windows操作系统环境下运行但是本发明的方法和系统除Windows操作系统以外的例如Linux/Unix或者MacOs操作系统中的任意一种操作系统下都可实施和运行,其中,在Liunx/Unix操作系统上,所述桌面应用为可执行文件,而在MacOS操作系统,所述桌面应用为dmg文件。
以上对本发明的具体实施方式进行了详细的描述,但本领域内的技术人员根据本发明的创造性概念,可以对本发明进行各种变形和修改,但所做的各种变形和修改不脱离本发明的精神和范围,皆属于本发明权利要求的范围之内。
Claims (9)
1.通过网页技术实现网络文件与桌面应用传输的方法,其特征在于,该方法包括:
创建web应用模块并嵌入到桌面应用中,然后初始化,其中所述应用模块包括web渲染显示模块、数据监听模块和桌面通信模块;
通过web渲染显示模块对web服务器提供的web页面进行渲染,并在桌面应用中显示;
通过所述数据监听模块采集并分析用户在web页面中的操作,监听用户通过web页面和web服务器之间进行的通信数据,截获其中包含文件请求的数据;
根据所监听到的通信数据进行网络请求分析,针对获取文件的请求和对监听到的所述通信数据的分析,通知桌面通信模块接收web服务器返回的文件数据,并通知桌面应用接收进度;
在接收到文件数据之后,将文件存储成实体文件,写入到存储介质;
文件数据接收完成之后,通知桌面应用。
2.如权利要求1所述的方法,其特征在于,初始化所述web渲染显示模块包括创建数据结构:网站初始化地址和操作系统信息。
3.如权利要求2所述的方法,其特征在于,
所述网站初始化地址包括:服务器地址、页面路径以及采用https或http协议;
所述操作系统信息包括:操作系统类型和版本。
4.如权利要求1所述的方法,其特征在于,初始化所述数据监听模块包括:建立监听线程和建立监听列表。
5.如权利要求4所述的方法,其特征在于,所述监听线程为单独设立的一个线程,所述监听列表包括获取文件的通信方式。
6.如权利要求1所述的方法,其特征在于,初始化所述桌面通信模块包括:生成桌面应用的桌面通知模型以及将桌面通信模块和桌面应用绑定。
7.如权利要求6所述的方法,其特征在于,所述桌面通知模型包括:桌面应用接口,用于在不同的操作系统下与桌面应用对接,从而在收到通知的时候,能够通知桌面应用;和
数据监听模块接口,用于接收从数据监听模块发送来的经过分析的数据。
8.如权利要求1所述的方法,其特征在于,所述包含文件请求的数据包括:用户发送的数据请求和服务器反馈的数据应答。
9.通过网页技术实现网络文件与桌面应用传输的系统,该系统用于执行权利要求1中的通过网页实现网络文件与桌面应用传输的方法,其特征在于,该系统包括:
web渲染显示单元,用于嵌入到桌面应用中,对web服务器提供的web页面进行渲染,并展示web页面;
数据监听单元,用于采集并分析用户在web页面中的操作,监听用户通过web页面和web服务器之间进行的通信数据,截获其中包含文件请求的数据以及web服务器交互的数据并进行分析;
下载单元,用于接收网络文件数据,保存成实体文件;
通知单元,用于通知桌面应用,文件接收完成。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201611253449.4A CN108270803B (zh) | 2016-12-30 | 2016-12-30 | 通过网页技术实现网络文件与桌面应用传输的方法和系统 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201611253449.4A CN108270803B (zh) | 2016-12-30 | 2016-12-30 | 通过网页技术实现网络文件与桌面应用传输的方法和系统 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN108270803A CN108270803A (zh) | 2018-07-10 |
CN108270803B true CN108270803B (zh) | 2021-02-02 |
Family
ID=62754184
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201611253449.4A Active CN108270803B (zh) | 2016-12-30 | 2016-12-30 | 通过网页技术实现网络文件与桌面应用传输的方法和系统 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN108270803B (zh) |
Families Citing this family (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN109361757B (zh) * | 2018-11-09 | 2022-02-25 | 网宿科技股份有限公司 | 一种数据传输方法、装置及计算机可读存储介质 |
CN114201169A (zh) * | 2021-12-14 | 2022-03-18 | 鼎道智联(北京)科技有限公司 | 结合web技术和网络通信技术实现操作系统界面 |
Family Cites Families (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US8826145B1 (en) * | 2007-11-12 | 2014-09-02 | Google Inc. | Unified web and application framework |
CN101534294B (zh) * | 2009-01-21 | 2012-04-18 | 凌阳科技股份有限公司 | 在多媒体播放器实现下载网络数据的方法与系统 |
CN105574049B (zh) * | 2014-10-30 | 2020-07-03 | 阿里巴巴集团控股有限公司 | 移动应用的页面处理方法、装置和系统 |
CN104717283A (zh) * | 2015-02-13 | 2015-06-17 | 腾讯科技(深圳)有限公司 | 文件下载的控制方法、终端及逻辑处理服务器 |
-
2016
- 2016-12-30 CN CN201611253449.4A patent/CN108270803B/zh active Active
Also Published As
Publication number | Publication date |
---|---|
CN108270803A (zh) | 2018-07-10 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US10949158B2 (en) | Screenshot method and apparatus | |
US10812611B2 (en) | Platform-independent application publishing to a personalized front-end interface by encapsulating published content into a container | |
US9961129B2 (en) | Business transaction correlation with client request monitoring data | |
EP2875425B1 (en) | Providing access to a remote application via a web client | |
CN108196915B (zh) | 基于应用容器引擎的代码处理方法、设备及存储介质 | |
US10547682B2 (en) | Dynamically scaling application components using microservices | |
US11611633B2 (en) | Systems and methods for platform-independent application publishing to a front-end interface | |
CN105765534A (zh) | 虚拟计算系统和方法 | |
WO2010113160A1 (en) | A method and system for emulating desktop software applications in a mobile communication network | |
CN109726094A (zh) | 压力测试的方法和装置 | |
US10084637B2 (en) | Automatic task tracking | |
CN106354546B (zh) | 虚拟机远程控制方法和系统 | |
CN107193674B (zh) | 在线推送消息的处理方法及装置 | |
US20170033980A1 (en) | Agent manager for distributed transaction monitoring system | |
JP2013080404A (ja) | クライアントでJavaメソッドを呼び出すシステム、コンピュータ、方法及びプログラム | |
CN113505302A (zh) | 支持动态获取埋点数据的方法、装置、系统及电子设备 | |
CN108270803B (zh) | 通过网页技术实现网络文件与桌面应用传输的方法和系统 | |
CN110427260B (zh) | 主机作业调度方法、装置及系统 | |
US10432490B2 (en) | Monitoring single content page application transitions | |
CN113014669B (zh) | 基于rpa的代理服务方法、系统、服务器和存储介质 | |
CN110807535A (zh) | 统一预约平台的构建方法、构建装置和统一预约平台系统 | |
CN114756228A (zh) | 页面处理方法、装置、设备及存储介质 | |
CN110019059B (zh) | 一种定时同步的方法和装置 | |
CN107391132B (zh) | 目标App执行预设动作的方法及装置、设备 | |
US10291743B2 (en) | Configuring service endpoints in native client applications |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
CB02 | Change of applicant information |
Address after: 100101 Beijing city Chaoyang District District three building 10, building 1, Hui Li two Applicant after: Aidipu Technology Co., Ltd Address before: 100101 Beijing city Chaoyang District District three building 10, building 1, Hui Li two Applicant before: IDEAPOOL (BEIJING) CULTURE AND TECHNOLOGY Co.,Ltd. |
|
CB02 | Change of applicant information | ||
GR01 | Patent grant | ||
GR01 | Patent grant |