CN111031005A - 一种基于Node.js的反向代理服务器及反向代理方法 - Google Patents

一种基于Node.js的反向代理服务器及反向代理方法 Download PDF

Info

Publication number
CN111031005A
CN111031005A CN201911152797.6A CN201911152797A CN111031005A CN 111031005 A CN111031005 A CN 111031005A CN 201911152797 A CN201911152797 A CN 201911152797A CN 111031005 A CN111031005 A CN 111031005A
Authority
CN
China
Prior art keywords
server
reverse proxy
unit
data
service request
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
Application number
CN201911152797.6A
Other languages
English (en)
Inventor
孙正华
周怡
向旭
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Shanghai Joyu Culture Communication Co ltd
Original Assignee
Shanghai Joyu Culture Communication Co ltd
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Shanghai Joyu Culture Communication Co ltd filed Critical Shanghai Joyu Culture Communication Co ltd
Priority to CN201911152797.6A priority Critical patent/CN111031005A/zh
Publication of CN111031005A publication Critical patent/CN111031005A/zh
Pending legal-status Critical Current

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/02Protocols based on web technology, e.g. hypertext transfer protocol [HTTP]
    • H04L67/025Protocols based on web technology, e.g. hypertext transfer protocol [HTTP] for remote control or remote monitoring of applications
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F8/00Arrangements for software engineering
    • G06F8/30Creation or generation of source code
    • G06F8/31Programming languages or programming paradigms
    • G06F8/315Object-oriented languages
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/08Network architectures or network communication protocols for network security for authentication of entities
    • H04L63/0876Network architectures or network communication protocols for network security for authentication of entities based on the identity of the terminal or configuration, e.g. MAC address, hardware or software configuration or device fingerprint
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/06Protocols specially adapted for file transfer, e.g. file transfer protocol [FTP]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/10Protocols in which an application is distributed across nodes in the network
    • H04L67/1097Protocols in which an application is distributed across nodes in the network for distributed storage of data in networks, e.g. transport arrangements for network file system [NFS], storage area networks [SAN] or network attached storage [NAS]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/2866Architectures; Arrangements
    • H04L67/30Profiles
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/50Network services
    • H04L67/56Provisioning of proxy services
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/50Network services
    • H04L67/56Provisioning of proxy services
    • H04L67/568Storing data temporarily at an intermediate stage, e.g. caching

Abstract

本发明涉及一种基于Node.js的反向代理服务器,包括交互单元、反向代理单元、缓存单元、用户管理单元和调试单元,维护人员通过用户管理单元获得权限,通过调试单元和交互单元进行分布式存储的配置项可视化配置,从而实现反向代理单元的反向代理,反向代理单元通过缓存单元缩短响应时间。与现有技术相比,反向代理服务器基于Node.js开发,对前端开发工程师而言非常友好,配置文件分布式存储,支持改动的追溯和备份,采用全功能的Web配置界面并支持远程操作,可更安全、更方便、更快捷地实现反向代理功能。

Description

一种基于Node.js的反向代理服务器及反向代理方法
技术领域
本发明涉及HTTP服务器和反向代理服务器领域,尤其是涉及一种基于Node.js的反向代理服务器及反向代理方法。
背景技术
反向代理服务器区别于正向代理服务器,是外部网络的服务端请求内部网络的客户端时需要使用的代理服务器,其过程为服务端发起服务请求至反向代理服务器,反向代理服务器将服务请求发送至客户端,进而将客户端返回的数据发送至服务端。
目前,业内已存在的较流行的HTTP反向代理服务器包括Nginx、HAProxy等。
诸如Nginx、HAProxy等最流行的HTTP反向代理服务器,运行、维护、路由规则的配置等,通常只能在终端(Terminal)中键入命令进行执行,需要熟悉Linux命令和该服务器的特定指令,学习成本较高,对于新手并不友好;同时相关的配置也是通过纯文本方式(如data.conf文件)进行保存,默认情况下也难以追溯改动和自动备份;由于历史原因,这些服务器几乎都是基于C语言开发,对于大量不熟悉C语言的开发工程师来说,很难进行维护和二次开发工作。
发明内容
本发明的目的就是为了克服上述现有技术存在的缺陷而提供一种基于Node.js的反向代理服务器及反向代理方法。
本发明的目的可以通过以下技术方案来实现:
一种基于Node.js的反向代理服务器,包括
交互单元:用于可视化配置分布式存储的配置项;
反向代理单元:用于接收服务端发送的HTTP服务请求,并返回HTTP服务请求的数据至服务端;
缓存单元:用于缓存客户端的数据;
用户管理单元:具有多种权限模式,保护分布式存储的配置项安全;
调试单元:用于远程或现场的dev调试;
通过用户管理单元获得权限,并通过调试单元和交互单元进行分布式存储的配置项配置,从而实现反向代理单元的反向代理,反向代理单元通过缓存单元缩短响应时间。
所述的交互单元包括文件选择器和代码浏览器,所述的文件选择器用于可视化选择文件和目录,所述的代码浏览器用于实时浏览代码。
所述的反向代理单元包括负载均衡子单元,所述的负载均衡子单元基于客户端性能分配权重。
所述的反向代理单元包括身份验证子单元,所述的身份验证子单元用于验证服务端身份。
修改配置项后,新的配置项立即生效,无需重启。
一种基于所述的反向代理服务器的基于Node.js的反向代理方法,该方法包括:
步骤S1:反向代理服务器接收服务端的HTTP服务请求;
步骤S2:判断该HTTP服务请求是否命中身份认证规则,若是,执行步骤S3,若否,执行步骤S4;
步骤S3:判断服务端是否已登录,若否,重定向至登录页,若是,执行步骤S4;
步骤S4:判断该HTTP服务请求是否命中缓存规则,若是且缓存中有HTTP服务请求的数据,将缓存中的HTTP服务请求的数据返回至服务端,结束,其余情况执行步骤S5;
步骤S5:判断该HTTP服务请求是否命中路由规则,若否,返回404至服务端,结束,若是,执行步骤S6;
步骤S6:判断路由规则的处理方式,通过不同的处理方式返回HTTP服务请求的数据至服务端。
所述的处理方式包括URL重写、静态文件处理、代理转发和自定义响应。
若处理方式为URL重写,返回重写后的URL和301至服务端,结束;
若处理方式为静态文件处理,从磁盘查找该HTTP服务请求的数据,若存在,返回从磁盘查找到的数据至服务端,若不存在但启用了try_files配置项,且磁盘的根目录下存在index文件,返回从磁盘查找到的数据至服务端,其余情况返回404至服务端,结束;
若处理方式为代理转发,按照负载均衡算法将该HTTP服务请求转发至一个客户端,若响应超时,返回500至服务端,若成功接收客户端返回的数据,将客户端返回的数据根据需要进行缓存,返回客户端返回的数据至服务端,结束;
若处理方式为自定义响应,返回自定义的内容和响应头,结束。
与现有技术相比,本发明具有以下优点:
(1)反向代理服务器基于Node.js开发,对前端开发工程师而言非常友好,因为都是基于JavaScript语言,易于理解和继续拓展功能;配置文件也不再保存于服务器本地的文本文件中,而是通过分布式存储在数据库,支持改动的追溯和备份。
(2)反向代理服务器设有交互单元、反向代理单元、缓存单元、用户管理单元和调试单元,抛弃传统的命令行方式配置配置项,交互单元采用全功能的Web配置界面,美观、优雅、现代化的UI设计,几乎所有配置项都可通过可视化配置,并支持远程操作,可更安全、更方便、更快捷地实现反向代理功能。
(3)交互单元包括文件选择器和代码浏览器,可以分层次更清晰地查看文件和目录,并可查看代码,方便维护人员理解。
(4)反向代理单元包括负载均衡子单元,负载均衡子单元基于客户端性能分配权重,可以选择最优的客户端提供数据,从而提高反向代理的能力。
(5)内置缓存单元,支持从缓存中直接返回响应内容,毫秒级访问体验。
(6)内置身份验证子单元,可避免无权限的服务端获取数据。
(7)内置用户管理单元:具有多种权限模式,可设置只读及可写权限,保护分布式存储的配置项安全。
(8)修改配置项后会及时生效,无需重启,避免重启时造成的无法使用问题。
(9)支持自定义响应,与交互单元结合,可以无需推送文件而上线新功能,极大优化了软件发布流程。
附图说明
图1为本发明反向代理服务器的结构示意图;
图2为本发明反向代理方法的流程图。
具体实施方式
下面结合附图和具体实施例对本发明进行详细说明。本实施例以本发明技术方案为前提进行实施,给出了详细的实施方式和具体的操作过程,但本发明的保护范围不限于下述的实施例。
实施例
本实施例提供一种基于Node.js的反向代理服务器,如图1所示,包括交互单元:用于可视化配置分布式存储的配置项;反向代理单元:用于接收服务端发送的HTTP服务请求,并返回HTTP服务请求的数据至服务端;缓存单元:用于缓存客户端的数据;用户管理单元:具有多种权限模式,保护分布式存储的配置项安全;调试单元:用于远程或现场的dev调试;通过用户管理单元获得权限,并通过调试单元和交互单元进行分布式存储的配置项配置,从而实现反向代理单元的反向代理,反向代理单元通过缓存单元缩短响应时间。反向代理服务器基于Node.js开发,对前端开发工程师而言非常友好,因为都是基于JavaScript语言,易于理解和继续拓展功能;配置文件也不再保存于服务器本地的文本文件中,而是通过分布式存储在数据库,支持改动的追溯和备份;抛弃传统的命令行方式配置配置项,采用全功能的Web配置界面,美观、优雅、现代化的UI设计,几乎所有配置项都可通过可视化配置,并支持远程操作,可更安全、更方便、更快捷地实现反向代理功能。
优选地,交互单元包括文件选择器和代码浏览器,文件选择器用于可视化选择文件和目录,代码浏览器用于实时浏览代码,可以分层次更清晰地查看文件和目录,并可查看代码,方便维护人员理解。
优选地,反向代理单元包括负载均衡子单元,所述的负载均衡子单元基于客户端性能分配权重,可以选择最优的客户端提供数据,从而提高反向代理的能力。
优选地,反向代理单元包括身份验证子单元,身份验证子单元用于验证服务端身份,可避免无权限的服务端获取数据。
优选地,修改配置项后,新的配置项立即生效,无需重启,避免重启时造成的无法使用问题。
本实施例还提供一种基于前述反向代理服务器的基于Node.js的反向代理方法,下面详述一个HTTP服务请求发送到反向代理服务器后的反向代理服务器处理流程,如图2所示:
首先判断该服务请求是否命中了身份认证规则,即该服务请求是否必须登录后才能访问,如果必须登录且未登录,则反向代理服务器自动重定向至登录页,以供登录,否则往下执行。
接着判断该服务请求是否命中了缓存规则,即该服务请求是否要继续后续的处理流程(如重定向、代理转发、返回静态页面等),如果命中了缓存规则,且缓存中确实有其数据,则立即将缓存中的数据作为响应(Response)返回给服务端(通常是浏览器),流程结束,否则往下执行。
接着判断该服务请求是否命中了路由规则,如果没有找到任何匹配的路由,则说明该服务请求不是预料中的服务请求,直接返回404(Not Found)至服务端,流程结束,否则往下执行。
此时判断该服务请求能够找到匹配的路由规则,路由规则支持4种处理方式:1.URL重写,2.静态文件处理,3.代理转发,4.自定义响应,依据路由规则中的配置选择其一进行处理。
如果处理方式是URL重写,则将重写后的URL作为响应头的Location,然后返回301(Redirect)至服务端,流程结束。
如果处理方式是静态文件处理,根据文件的路径,去磁盘尝试查找该文件,如果文件存在,则返回文件内容至服务端,并在返回的响应头中设置恰当的文件类型,流程结束;如果文件不存在,但启用了try_files配置,且磁盘根目录下存在index文件,则同样返回该文件内容至服务端;其它情况返回404,流程结束。
如果处理方式是代理转发,则从所配置的反向代理服务器列表,按照负载均衡算法将服务请求转发至其中一个客户端,此时反向代理服务器处于等待响应阶段,如果响应超时,则返回500(Internal Server Error)至服务端,流程结束。如果成功接收到了响应,接着判断是否需要设置服务端缓存,如果需要则将客户端的响应数据进行缓存,最后将客户端的响应数据返至服务端,流程结束。
如果处理方式是自定义响应,则直接返回自定义的内容和响应头至服务端,流程结束。
本实施例还具有以下优点:
支持自定义响应,结合UI界面,可以无需推送文件而上线新功能,极大优化了软件发布流程;一般的页面上线流程,是通过提交和推送代码文件到代码托管服务器,再由代码托管服务器推送到生产环境的Web服务器(通常会限定在固定的时间,比如每周的周一晚上),再重启服务器使得新页面生效,而基于本实施例的反向代理服务器,可通过UI界面进行配置,得到自定义响应和可视页面,即可实时发布新的页面。
内置缓存单元,支持从缓存中直接返回响应内容,毫秒级访问体验。
内置用户管理单元:具有多种权限模式,可设置只读及可写权限,保护分布式存储的配置项安全。

Claims (8)

1.一种基于Node.js的反向代理服务器,其特征在于,包括
交互单元:用于可视化配置分布式存储的配置项;
反向代理单元:用于接收服务端发送的HTTP服务请求,并返回HTTP服务请求的数据至服务端;
缓存单元:用于缓存客户端的数据;
用户管理单元:具有多种权限模式,保护分布式存储的配置项安全;
调试单元:用于远程或现场的dev调试;
通过用户管理单元获得权限,并通过调试单元和交互单元进行分布式存储的配置项配置,从而实现反向代理单元的反向代理,反向代理单元通过缓存单元缩短响应时间。
2.根据权利要求1所述的一种基于Node.js的反向代理服务器,其特征在于,所述的交互单元包括文件选择器和代码浏览器,所述的文件选择器用于可视化选择文件和目录,所述的代码浏览器用于实时浏览代码。
3.根据权利要求1所述的一种基于Node.js的反向代理服务器,其特征在于,所述的反向代理单元包括负载均衡子单元,所述的负载均衡子单元基于客户端性能分配权重。
4.根据权利要求1所述的一种基于Node.js的反向代理服务器,其特征在于,所述的反向代理单元包括身份验证子单元,所述的身份验证子单元用于验证服务端身份。
5.根据权利要求1所述的一种基于Node.js的反向代理服务器,其特征在于,修改配置项后,新的配置项立即生效,无需重启。
6.一种基于权利要求1-5任一所述的反向代理服务器的基于Node.js的反向代理方法,其特征在于,该方法包括:
步骤S1:反向代理服务器接收服务端的HTTP服务请求;
步骤S2:判断该HTTP服务请求是否命中身份认证规则,若是,执行步骤S3,若否,执行步骤S4;
步骤S3:判断服务端是否已登录,若否,重定向至登录页,若是,执行步骤S4;
步骤S4:判断该HTTP服务请求是否命中缓存规则,若是且缓存中有HTTP服务请求的数据,将缓存中的HTTP服务请求的数据返回至服务端,结束,其余情况执行步骤S5;
步骤S5:判断该HTTP服务请求是否命中路由规则,若否,返回404至服务端,结束,若是,执行步骤S6;
步骤S6:判断路由规则的处理方式,通过不同的处理方式返回HTTP服务请求的数据至服务端。
7.根据权利要求6所述的一种基于Node.js的反向代理方法,其特征在于,所述的处理方式包括URL重写、静态文件处理、代理转发和自定义响应。
8.根据权利要求7所述的一种基于Node.js的反向代理方法,其特征在于,
若处理方式为URL重写,返回重写后的URL和301至服务端,结束;
若处理方式为静态文件处理,从磁盘查找该HTTP服务请求的数据,若存在,返回从磁盘查找到的数据至服务端,若不存在但启用了try_files配置项,且磁盘的根目录下存在index文件,返回从磁盘查找到的数据至服务端,其余情况返回404至服务端,结束;
若处理方式为代理转发,按照负载均衡算法将该HTTP服务请求转发至一个客户端,若响应超时,返回500至服务端,若成功接收客户端返回的数据,将客户端返回的数据根据需要进行缓存,返回客户端返回的数据至服务端,结束;
若处理方式为自定义响应,返回自定义的内容和响应头,结束。
CN201911152797.6A 2019-11-22 2019-11-22 一种基于Node.js的反向代理服务器及反向代理方法 Pending CN111031005A (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201911152797.6A CN111031005A (zh) 2019-11-22 2019-11-22 一种基于Node.js的反向代理服务器及反向代理方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201911152797.6A CN111031005A (zh) 2019-11-22 2019-11-22 一种基于Node.js的反向代理服务器及反向代理方法

Publications (1)

Publication Number Publication Date
CN111031005A true CN111031005A (zh) 2020-04-17

Family

ID=70201997

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201911152797.6A Pending CN111031005A (zh) 2019-11-22 2019-11-22 一种基于Node.js的反向代理服务器及反向代理方法

Country Status (1)

Country Link
CN (1) CN111031005A (zh)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN112187869A (zh) * 2020-09-03 2021-01-05 京东数字科技控股股份有限公司 Iot设备的远程调试系统、方法、电子设备及存储介质
CN112435007A (zh) * 2020-11-26 2021-03-02 平安普惠企业管理有限公司 基于Node.js的代码提交方法、装置、计算机设备及存储介质

Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20140281918A1 (en) * 2013-03-15 2014-09-18 Yottaa Inc. Systems and methods for configuration-based optimization by an intermediary
CN104468226A (zh) * 2014-12-18 2015-03-25 山东中创软件工程股份有限公司 基于Nginx的配置方法及装置
CN106161617A (zh) * 2016-07-04 2016-11-23 微梦创科网络科技(中国)有限公司 基于nodejs的反向代理方法、反向代理服务器及系统
CN107145367A (zh) * 2017-04-18 2017-09-08 北京思特奇信息技术股份有限公司 一种用于前端开发的可视化发布方法及系统
CN108111345A (zh) * 2017-12-19 2018-06-01 易知成都数据服务有限公司 一种可视化反向代理配置和测试方法
CN109450708A (zh) * 2018-12-14 2019-03-08 北京明朝万达科技股份有限公司 一种Nginx动态配置方法及系统

Patent Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20140281918A1 (en) * 2013-03-15 2014-09-18 Yottaa Inc. Systems and methods for configuration-based optimization by an intermediary
CN104468226A (zh) * 2014-12-18 2015-03-25 山东中创软件工程股份有限公司 基于Nginx的配置方法及装置
CN106161617A (zh) * 2016-07-04 2016-11-23 微梦创科网络科技(中国)有限公司 基于nodejs的反向代理方法、反向代理服务器及系统
CN107145367A (zh) * 2017-04-18 2017-09-08 北京思特奇信息技术股份有限公司 一种用于前端开发的可视化发布方法及系统
CN108111345A (zh) * 2017-12-19 2018-06-01 易知成都数据服务有限公司 一种可视化反向代理配置和测试方法
CN109450708A (zh) * 2018-12-14 2019-03-08 北京明朝万达科技股份有限公司 一种Nginx动态配置方法及系统

Non-Patent Citations (2)

* Cited by examiner, † Cited by third party
Title
ONLY丿阿海: "一个有意思的服务器工具——nginx-gui", 《HTTPS://BLOG.CSDN.NET/》 *
林宏: "Nginx反向代理可视化管理方案研究及编程实现", 《贵州师范学院学报》 *

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN112187869A (zh) * 2020-09-03 2021-01-05 京东数字科技控股股份有限公司 Iot设备的远程调试系统、方法、电子设备及存储介质
CN112435007A (zh) * 2020-11-26 2021-03-02 平安普惠企业管理有限公司 基于Node.js的代码提交方法、装置、计算机设备及存储介质

Similar Documents

Publication Publication Date Title
CN107003877B (zh) 应用的上下文深层链接
CN102333122B (zh) 一种下载资源提供方法、装置及系统
US9722879B1 (en) Method and apparatus of an intuitive web based command line interface
US8321681B2 (en) Managing user accounts
US8495013B2 (en) Distributed storage system and method for storing objects based on locations
CN102075570B (zh) 一种基于关键字的http报文缓存机制的实现方法
KR20160030381A (ko) 웹 페이지 액세스 방법, 장치, 라우터, 프로그램 및 기록매체
US20120054217A1 (en) Virtual world query response system
JP5236662B2 (ja) ウェブサイトナビゲーションシステム及びウェブサイトナビゲーション方法
US20060277196A1 (en) Data management system, data server, data management method and storage medium thereof
KR101672349B1 (ko) 파일 클라우드 서비스 장치 및 방법
CN104731516A (zh) 一种存取文件的方法、装置及分布式存储系统
CN109302388A (zh) 访问权限过滤方法、系统、计算机设备和存储介质
CN110781505B (zh) 系统构建方法及装置、检索方法及装置、介质和设备
CN113382282B (zh) 一种页面资源访问方法、装置、电子设备和存储介质
CN111031005A (zh) 一种基于Node.js的反向代理服务器及反向代理方法
US20170300129A1 (en) Keypress processing method and apparatus for terminal
CN104008331A (zh) 一种恶意网站的访问方法、装置和系统
US20210096926A1 (en) Cloud computing platform that executes third-party code in a distributed cloud computing network and uses a distributed data store
JP5781105B2 (ja) 履歴管理システム、及び履歴管理方法
US20100036853A1 (en) Management of redirection
US20140280335A1 (en) System and method to allow a domain name server to process a natural language query and determine context
US20090234824A1 (en) Browser Use of Directory Listing for Predictive Type-Ahead
CN102333123B (zh) 文件存储方法、设备、查找方法、设备和网络设备
CN103957252A (zh) 云储存系统的日志获取方法及其系统

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
RJ01 Rejection of invention patent application after publication
RJ01 Rejection of invention patent application after publication

Application publication date: 20200417