CN101911075B - 用于现有应用的定制和分发的基于浏览器的代理服务器 - Google Patents
用于现有应用的定制和分发的基于浏览器的代理服务器 Download PDFInfo
- Publication number
- CN101911075B CN101911075B CN200980102193.9A CN200980102193A CN101911075B CN 101911075 B CN101911075 B CN 101911075B CN 200980102193 A CN200980102193 A CN 200980102193A CN 101911075 B CN101911075 B CN 101911075B
- Authority
- CN
- China
- Prior art keywords
- web page
- proxy
- module
- explorer
- 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.)
- Expired - Fee Related
Links
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/90—Details of database functions independent of the retrieved data types
- G06F16/95—Retrieval from the web
- G06F16/957—Browsing optimisation, e.g. caching or content distillation
- G06F16/9577—Optimising the visualization of content, e.g. distillation of HTML documents
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/90—Details of database functions independent of the retrieved data types
- G06F16/95—Retrieval from the web
- G06F16/957—Browsing optimisation, e.g. caching or content distillation
- G06F16/9574—Browsing optimisation, e.g. caching or content distillation of access to content, e.g. by caching
-
- 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]
-
- 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/50—Network services
- H04L67/56—Provisioning of proxy services
Landscapes
- Engineering & Computer Science (AREA)
- Databases & Information Systems (AREA)
- Theoretical Computer Science (AREA)
- Data Mining & Analysis (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Information Transfer Between Computers (AREA)
Abstract
通过将web浏览器嵌入代理服务器中从而形成代理浏览器,来执行至少一个客户计算机软件应用的系统、方法和计算机程序产品。所述代理浏览器用于在所述代理服务器中执行应用。在本发明的一个实施例中,给连接到所述代理服务器的每个客户浏览器分配所述代理浏览器的实例,并维持用于所述客户浏览器的会话信息。当所述客户浏览器向所述代理服务器发出请求时,将所述请求链接到所述代理浏览器的实例。
Description
技术领域
一般而言,本发明涉及一种代理服务器,更具体地,涉及使用代理服务器来使具有有限性能的设备能够支持动态web应用的系统和方法。
背景技术
web应用用于使用因特网的大部分客户机/服务器交互。在web应用中,每次运行应用时,就典型地使用web浏览器和Java小程序(applet)从web下载该应用中的一些或全部。最近,动态web应用(例如在许多Web 2.0应用中发现的动态web应用)已经对用户的web体验带来新类型的动态和交互组件。这些应用通常涉及标准语言的客户端脚本(例如JavaScript)的使用。
近来还存在大量的具有改进功能的电子设备(例如移动电话、个人数字助理(PDA)、电视机顶盒等)。然而,这些类型的设备经常因为各种原因(例如有限的屏幕实际使用面积、格式兼容性、有限的计算能力或不能支持Javascript)而不能充分利用动态web应用。因此,存在对改变现有的动态web应用以用在这样的设备上的方法的需要。
此外,对于特定用户、用户组或特定任务,存在能够定制动态web应用的需要。已经讨论了作为可能的解决方案的基于代理服务器的技术,以在web上提供这些类型的定制。然而,代理服务器技术通常对Web 2.0应用起适当的作用。这是因为:1)实施Web 2.0应用的动态功能的JavaScript代码不通过该代理服务器,或2)脚本预期的web页面的文档对象模型(DOM)的一些元素可以由该代理服务器除去。向设备添加附加功能的一个途径是采用代理服务器来转换客户请求和/或服务器响应。美国专利No.5,727,159描述了用于将内容转换为由低功率便携式计算机可用的形式的代理服务器。美国专利No.5,918,013和6,829,746描述了用于将文档从现有的格式转码到更适合特定状态的另外的格式(例如转码到用于说外国话的人的另外的语言、转码到具有不同显示要求的移动设备上、或转码到具有对于残障用户更容易使用的更大的按钮的格式)的技术。不幸地,这些技术因为其不能适当地处理动态内容同样具有上述的问题。这主要因为这些技术不能执行客户端脚本并维持关于每个客户的足够的状态信息。
使用远程桌面技术是另外的现有技术,其可用于允许具有有限的功能的设备使用动态web应用。远程桌面技术的实例包括微软的RemoteDesktop、XWindows或AT&T的VNC,其可以用于从客户设备上的服务器机器来浏览web浏览器的输出。尽管这些技术受限于从该服务器机器显示精确的像素,但是已经对定制起到一些作用。实例包括Wincuts或UserInterface Facades。这些定制可以包括例如从远程浏览的界面中的原始界面显示按钮的子集。不像其他代理服务器方式,该方式可以处理客户端JavaScript,因为实际web浏览器正在该服务器机器上使用。然而,因为对服务器机器的图像的依赖,这些技术仍然受到限制。例如,(如果不是不可能,则)难以改变按钮上的标签。服务器机器和客户机器的输入和输出能力还必须是类似的,因为在该客户机器上的用户必须能够提供服务器机器期望的输入,例如在按钮处定点和点击或拖曳滚动条。
因此,存在使具有有限能力的设备能够适当处理动态web应用的方法的需要。还存在能够执行客户端脚本并维持关于每个客户的足够的状态信息的代理服务器的需要。
发明内容
为了克服上面简要描述的现有技术的局限,本发明提供了一种用于使用基于浏览器的代理服务器来定制和分发动态Web应用的方法、计算机程序产品和系统。
在本发明的一个方面中,一种用于执行至少一个客户计算机软件应用的方法,包括:将web浏览器嵌入代理服务器中,从而形成代理浏览器;以及使用所述代理浏览器以在所述代理服务器中执行所述应用。
在本发明的另外的方面中,一种将web浏览器嵌入代理服务器的方法包括:将所述web浏览器放置到所述代理服务器中,从而形成代理浏览器;在所述代理服务器中将事件转换器逻辑连接到所述代理浏览器;以及在所述代理服务器中将转码器逻辑对接到所述代理浏览器以及所述事件转换器。
在本发明的另外的方面中,一种用于提供web应用的访问的方法包括:通过包含在代理服务器中的代理浏览器接收来自客户浏览器的请求;将所述请求转换为操作;将所述操作应用到所述代理浏览器中的web页面;提取所述web页面的相关部分;以及使用所述提取的所述web页面的相关部分生成输出,所述输出由所述客户浏览器可读。
在本发明另外的方面中,一种代理服务器,包括:代理浏览器,耦接到外部web服务器;事件转换器,用于接收来自客户浏览器的请求;以及转码器,用于通过所述代理浏览器提取从所述外部web服务器接收的内容的相关部分,并生成发送到所述客户浏览器的输出。
在本发明的另外的方面,一种计算机程序产品,包括具有计算机可读程序的计算机可用介质,其中当执行时所述计算机可读程序使所述计算机执行以下操作:将web浏览器嵌入代理服务器中,从而形成代理浏览器;以及使用所述代理浏览器以在所述代理服务器中执行客户应用。
特别在所附的、并形成其一部分的权利要求中指出表征了本发明的新颖性的特征以及各种优点。然而,为了更好地理解本发明及其优点,应该参考相应的描述性内容以及形成本发明的一部分的相应的附图,其中根据本发明描述以及例示具体的实例。
附图说明
现在参考附图,仅通过例示来描述本发明的优选实施例,其中:
图1示出根据本发明的实施例的基于浏览器的代理服务器系统的原理框图;
图2示出根据本发明实施例的、使用在图1中示出的系统来定制和分发动态web应用的方法的时间轴;以及
图3示出用于执行本发明一个实施例的信息处理系统的高级框图。
具体实施方式
本发明的实施例通过教导用于使具有有限的功能的设备处理动态web应用的系统、计算机程序产品和方法来处理与现有技术关联的问题。本发明的实施例将web浏览器放置在代理服务器内(已知为代理浏览器),并使用它在该代理服务器内执行客户端应用(例如JavaScript代码)。向连接到代理服务器的每个客户浏览器给出其自己的代理浏览器实例并维持会话信息,以便可以将来自客户浏览器的未来请求链接到适当的代理浏览器。客户浏览器的第一请求致使相应的代理浏览器打开web页面,执行任何嵌入在现有的web页面的客户端代码(例如Javascript)并之后向该客户浏览器返回最终页面内容的一部分。该代理浏览器提供诸如DOM的应用程序接口(API),以访问、操作和控制出现在该浏览器的web页面。将客户浏览器的未来请求转换为在由该代理浏览器当前打开的页面上执行的操作。这些操作可以包括点击页面中的DOM对象或提交表格。当代理浏览器完成加载页面时,他向客户浏览器再次返回最终页面内容的一部分。
因此,本发明的实施例具有一些比现有技术更显著的优点。以前的代理服务器使用了映射类型的系统,典型的URL映射为修改该页面的代码。每次客户请求页面时,服务器就从外部页面获得该内容,查阅该代码以修改那个页面,执行它,并返回修改的页面。用户得到该页面所采用的路径是不相关的。本发明的实施例使用描述语言,其描述用户可以取得应用所采用的可能的交互路径,包括用户可以进行的输入以及对于这些输入的可能输出。这允许该应用说明支持来自Web 2.0应用的动态内容,因为客户请求可以转换为代理浏览器中的模拟的鼠标和键盘事件。还可以根据通过XmlHttpRequest改变的页面的一部分生成新的输出,而非仅仅是新的页面请求。
本发明的实施例可以用于许多不同目的。例如,本发明的实施例可以用于将电子医疗记录(EMR)应用的选择的片段(例如病人治疗安排或治疗历史概况)移动到医生可以随身携带的移动设备。本发明的实施例还可以用于为执行者或其助手改变旅行计划应用,以便在旅途中助手可以接收用于安排新的旅行的界面,以及执行者可以接收用于确认预定并得到更新的路线的界面。还可以使用本发明的实施例来定制可以在商业的基于web的购买系统中发现的单调冗长的结账过程。本发明的实施例可以例如通过仅显示需要该用户在不同的购买时改变的字段来实现更简单的过程。
现在参考图1,示出基于浏览器的代理服务器系统10,其包括代理服务器12和客户浏览器14。代理服务器12包括代理浏览器16、事件转换器18和转码器/web剪辑器20。代理浏览器16连接到现有的web服务器17。代理浏览器16可以是标准web浏览器,并可以实施与嵌入在现有的web页面中的代码兼容的执行引擎(未示出)。在一些实施例中,其可以是JavaScript执行引擎。代理浏览器16还可以提供API以访问、操作和控制在该浏览器中出现的web页面。在一些实施例中,这可以包括生成当前正在显示的web页面的DOM树说明。在一个实施例中,可以使用MozillaFirefox浏览器,但是原则上可以使用允许附加代码来访问web页面数据结构的任何现代浏览器。
事件转换器18从客户浏览器14获取请求并将其转换为将应用到当前包含在代理浏览器16中的web页面的操作。这些操作的范围可以从简单的行为(例如点击链接)到更复杂的行为(例如填写表格并按压提交按钮)。
转码器/web剪辑器20确定代理浏览器16何时完成加载其新的内容。这可以通过onLoad事件来进行。转码器/web剪辑器20还提取内容的相关部分并生成发送回客户浏览器14的输出。该输出的范围可以从低功能设备的静态HTML页面到高功能设备的具有级联样式表单(CSS)、动态HTML(DHTML)和JavaScript的完全动态页面。注意到,将创建生成的页面,以便可由事件转换器18解释回到代理服务器12的任何请求。
代理浏览器16、时间转换器18和转码器/web剪辑器20的操作可以由应用说明组件22绑定在一起,实施应用说明组件22指定如何为客户浏览器14修改现有的一组Web页面,以及什么装置在用于页面之间导航的该客户浏览器中可用。
在本发明的实施例中,应用说明22包括由代理服务器12生成的一组修改的web页面。这些修改的web页面称为“小页面程序(pagelet)”。每个小页面程序描述可以由该客户浏览器看到的一个页面。小页面程序在应用说明中通过三个不同的脚本来定义:剪辑脚本、事件脚本和加载脚本。
现在参考图2,示出基于浏览器的代理服务器系统10的一个实施例的时间轴。更具体地,该时间轴26示出代理服务器12如何使用来自应用说明22的脚本来处理请求。更具体地,客户浏览器28生成由代理服务器12接收的请求。客户浏览器28可以驻留在移动设备中,或具有有限功能的其他设备中。响应于来自该客户浏览器的请求,代理浏览器34打开其从外部现有的Web服务器接收的web页面。
应用说明22定义第一小页面程序30并使用事件脚本32,其解释来自客户浏览器28的请求,以确定应该在代理浏览器34中执行来自应用说明22中的哪组操作以生成第二小页面程序40。可以不在该请求中编码这些操作。相反,该请求包括对于存储在代理服务器12上的操作列表的指针。这样的操作可以包括点击在客户浏览器28中的链接或填充表格以及按压提交按钮。事件脚本32还标识将在代理浏览器34完成加载从现有的web服务器36接收的任何新内容之后的合适的浏览器事件。事件脚本32还致使加载脚本38当该事件下一次出现时执行。
加载脚本38扫描在代理浏览器34中加载的页面的内容,并确定下一个小页面程序,例如第二小页面程序40。一旦确定第二小页面程序40,就调用用于第二小页面程序40的剪辑脚本42,以生成将发送给客户浏览器28的内容。
更具体地,剪辑脚本指定如何创建将发送给该客户浏览器的小页面程序的内容。内容创建主要涉及从加载在代理浏览器34中的页面选择并提取元素,并将其组合在一起以制成单独的一致性页面。剪辑脚本42还可以插入新的内容。剪辑脚本42还可以重新编写链路和表格以重新指回代理服务器34,而非指回外部现有的web服务器36。于是可以无限次重复图2中所示的过程26。
本发明的实施例可以采用全部硬件实施例、全部软件实施例、或包含硬件和软件部分的实施例的形式。优选的实施例可以以软件来实施,其包括但不限于固件、常驻软件和微码。
此外,本发明的实施例可以采用从计算机可用或计算机可读介质可访问的计算机程序产品,该介质提供程序代码以由计算机或任何指令执行系统使用或结合计算机或任何指令执行系统来使用。为了说明的目的,计算机可用或计算机可读介质可以是可包含、存储、通信、传播或传输程序的任何设备,该程序由指令执行系统、设备或装置使用或者结合指令执行系统、设备或装置来使用。
该介质可以是电、磁、光、电磁、红外、半导体系统(或设备或装置)、或传播介质。计算机可读介质的实例包括半导体或固态存储器、磁带、可拆卸计算机磁盘、随机访问存储器(RAM)、只读存储器(ROM)、硬磁盘或光盘。光盘的当前实例包括紧致盘-只读存储器(CD-ROM)、紧致盘-读/写(CD-R/W)和DVD。
适用于存储和/或执行程序代码的数据处理系统将包括经由系统总线与存储器单元直接或间接耦接的至少一个处理器。该存储器单元可以包括实际执行程序代码期间所采用的本地存储器、海量存储器和缓存存储器,该缓存存储器提供至少一些程序代码的临时存储以便减少执行期间必须从海量存储器获取的代码的次数。
输入/输出或I/O设备(包括但不限于键盘、显示器、定位设备)可以直接耦接到该系统或经由中间I/O控制器耦接到该系统。
网络适配器还可以耦接到该系统,以使该数据处理系统经由中间的私有或公共网络耦接到其他数据处理系统或远程打印机或存储设备。调制解调器、线缆调制解调器以及以太网卡仅仅是当前可用的一些类型的网络适配器。
图3是示出用于实施本发明一个实施例的信息处理系统的高级框图。该计算机系统包括一个或多个处理器(例如处理器44)。处理器44连接到通信基础架构46(例如通信总线、交叉条(cross-over bar)或网络)。就这种例示性计算机系统描述各种软件实施例。在阅读该说明书之后,对于相关领域技术人员而言如何使用其他计算机系统和/或计算机架构实施本发明的实施例将变得显而易见。
该计算机系统可以包括显示器接口48,其转发来自通信基础架构46(或来自未示出的帧缓冲器)的图形、文本和其它数据以在显示单元50上显示。该计算机系统还包括主存储器52,优选地包括随机访问存储器(RAM),以及还可以包括次存储器54。例如,次存储器54可以包括硬盘驱动器56和/或可拆卸存储驱动器58(代表例如软盘驱动器、磁带驱动器或光盘驱动器)。可拆卸存储驱动器58以对于本领域技术人员熟知的方式从可拆卸存储单元60进行读取或向其写入。可拆卸存储单元60代表例如软盘、紧致盘、磁带或光盘等,其可以由可拆卸存储驱动器58读写。正如理解的那样,可拆卸存储单元60包括具有在此存储的计算机软件和/或数据的计算机可读介质。
在可替换的实施例中,次存储器54可以包括用于允许计算机程序或其他指令加载到计算机系统中的其他类似的装置。例如,这样的装置可以包括可拆卸存储单元62和接口64。这样的装置的实例可以包括程序盒和盒式接口(例如在视频游戏机中发现的)、可拆卸存储器芯片(例如EPROM或PROM)和关联的插孔,以及其他可拆卸存储单元62以及允许软件和数据从可拆卸存储单元62传送到该计算机系统的接口64。
该计算机系统还可以包括通信接口66。通信接口66允许软件和数据在计算机系统和外部设备间传送。通信接口66的实例可以包括调制解调器、网络接口(例如以太网卡)、通信端口或PCMCIA槽和卡等。通过通信接口66以信号(例如其可以是电、电磁、光或能够由通信接口66接收的其他信号)的形式传送软件和数据。通过通信路径(即信道)68将这些信号提供给通信接口66。信道68承载信号,并可以使用有线或电缆、光纤、电话线、蜂窝电话链路、RF链路和/或其他通信信道来实施。
在该文件中,使用术语“计算机程序介质”、“计算机可用介质”和“计算机可读介质”通常来指诸如主存储器52和次存储器54、可拆卸存储驱动器58和安装在硬盘驱动器56中的硬盘的介质。
计算机程序(也称为计算机控制逻辑)存储在主存储器52和/或次存储器54中。还可以通过通信接口66来接收计算机程序。当执行时,这样的计算机程序使该计算机系统执行如在此所讨论的本发明的实施例的特征。更具体地,当执行时,该计算机程序使处理器44执行该计算机系统的特征。因此,这样的计算机程序表示该计算机系统的控制器。
根据上述说明,可以看到本发明的实施例提供用于使用基于浏览器的代理服务器定制和分发动态web应用的系统、计算机程序产品和方法。如果没有明确指出,则在权利要求中以单数提及的元素并不旨在指“一个并且仅仅”,而是指“一个或多个”。本权利要求旨在包括本领域技术人员当前已知的或将来知道的上述例示性实施例的所有结构的和功能上的等同物。根据35U.S.C.第112节第6段的规定,如果没有使用术语“用于...的装置”或“用于...的步骤”明确地描述,则不解释在此未要求的元素。
虽然详细描述了本发明的优选实施例,但是本领域技术人员应该理解,可以出现示出的实施例的修改和变化。
Claims (15)
1.一种用于执行至少一个客户计算机软件应用的方法,包括:将web浏览器嵌入代理服务器中,从而形成代理浏览器;以及通过以下步骤使用所述代理浏览器以在所述代理服务器中执行所述应用:
给连接到所述代理服务器的每个客户浏览器分配所述代理浏览器的实例;
维持用于所述客户浏览器的会话信息;以及
如果所述客户浏览器向所述代理服务器发出请求,则将所述请求链接到所述代理浏览器的所述实例;
其中所述链接步骤包括:如果所述请求是所述客户浏览器的第一请求,则:
通过所述代理浏览器打开web页面;
在所述web页面上执行所述至少一个客户计算机软件应用,其中所述执行步骤包括:如果所述请求不是所述客户浏览器的第一请求,将所述来自客户浏览器的至少一个请求转换为将应用到包含在所述代理浏览器中的web页面的操作,将所述操作应用到所述代理浏览器中的web页面;以及
将所述执行步骤得到的所述web页面的相关部分内容返回到所述客户浏览器。
2.如权利要求1所述的方法,其中所述返回步骤包括创建修改的web页面。
3.如权利要求2所述的方法,其中所述创建步骤包括:
从所述web页面提取元素;以及
将所述元素组合到所述修改的web页面中。
4.如权利要求2所述的方法,其中所述创建步骤包括:将新的内容插入所述修改的web页面中。
5.如权利要求1所述的方法,其中所述执行步骤包括:解释所述请求,以确定应用到所述代理浏览器以生成下一修改的web页面的一组操作。
6.如权利要求1所述的方法,还包括:
扫描所述web页面的内容;以及
确定下一修改的web页面。
7.一种提供web应用的访问的方法,包括:
通过包含在代理服务器中的代理浏览器接收来自客户浏览器的至少一个请求;
将所述来自客户浏览器的至少一个请求转换为将应用到包含在所述代理浏览器中的web页面的操作;
将所述操作应用到所述代理浏览器中的web页面;
提取所述web页面的相关部分;以及
使用所述提取的所述web页面的相关部分生成输出,所述输出由所述客户浏览器可读。
8.如权利要求7所述的方法,还包括:创建应用说明,其指定如何为所述客户浏览器修改现有的一组web页面,以及指定在用于web页面之间导航的所述客户浏览器中可用的装置。
9.一种用于执行至少一个客户计算机软件应用的系统,包括:将web浏览器嵌入代理服务器中,从而形成代理浏览器;以及通过以下模块使用所述代理浏览器以在所述代理服务器中执行所述应用:
配置为给连接到所述代理服务器的每个客户浏览器分配所述代理浏览器的实例的模块;
配置为维持用于所述客户浏览器的会话信息的模块;以及
配置为如果所述客户浏览器向所述代理服务器发出请求,则将所述请求链接到所述代理浏览器的所述实例的模块;
其中所述配置为如果所述客户浏览器向所述代理服务器发出请求,则将所述请求链接到所述代理浏览器的所述实例的模块包括:
配置为通过所述代理浏览器打开web页面的模块;
配置为在所述web页面上执行所述至少一个客户计算机软件应用的模块,其中所述配置为在所述web页面上执行所述至少一个客户计算机软件应用的模块包括:配置为如果所述请求不是所述客户浏览器的第一请求,将所述来自客户浏览器的至少一个请求转换为将应用到包含在所述代理浏览器中的web页面的操作,将所述操作应用到所述代理浏览器中的web页面的模块;以及
配置为将所述配置为在所述web页面上执行所述至少一个客户计算机软件应用的模块得到的所述web页面的相关部分内容返回到所述客户浏览器的模块。
10.如权利要求9所述的系统,其中所述配置为将所述配置为在所述web页面上执行所述至少一个客户计算机软件应用的模块得到的所述web页面的相关部分内容返回到所述客户浏览器的模块包括配置为创建修改的web页面的模块。
11.如权利要求10所述的系统,其中所述配置为创建修改的web页面的模块包括:
配置为从所述web页面提取元素的模块;以及
配置为将所述元素组合到所述修改的web页面中的模块。
12.如权利要求10所述的系统,其中所述配置为创建修改的web页面的模块包括:配置为将新的内容插入所述修改的web页面中的模块。
13.如权利要求9所述的系统,其中所述配置为在所述web页面上执行所述至少一个客户计算机软件应用的模块包括:配置为解释所述请求,以确定应用到所述代理浏览器以生成下一修改的web页面的一组操作的模块。
14.如权利要求9所述的系统,还包括:
配置为扫描所述web页面的内容的模块;以及
配置为确定下一修改的web页面的模块。
15.一种提供web应用的访问的系统,包括:
配置为通过包含在代理服务器中的代理浏览器接收来自客户浏览器的至少一个请求的模块;
配置为将所述来自客户浏览器的至少一个请求转换为将应用到包含在所述代理浏览器中的web页面的操作的模块;
配置为将所述操作应用到所述代理浏览器中的web页面的模块;
配置为提取所述web页面的相关部分的模块;以及
配置为使用所述提取的所述web页面的相关部分生成输出的模块,所述输出由所述客户浏览器可读。
Applications Claiming Priority (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US12/013,559 | 2008-01-14 | ||
US12/013,559 US7664862B2 (en) | 2008-01-14 | 2008-01-14 | Browser-based proxy server for customization and distribution of existing applications |
PCT/EP2009/050335 WO2009090176A1 (en) | 2008-01-14 | 2009-01-14 | Browser-based proxy server for customization and distribution of existing applications |
Publications (2)
Publication Number | Publication Date |
---|---|
CN101911075A CN101911075A (zh) | 2010-12-08 |
CN101911075B true CN101911075B (zh) | 2015-02-25 |
Family
ID=40435039
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN200980102193.9A Expired - Fee Related CN101911075B (zh) | 2008-01-14 | 2009-01-14 | 用于现有应用的定制和分发的基于浏览器的代理服务器 |
Country Status (6)
Country | Link |
---|---|
US (2) | US7664862B2 (zh) |
EP (1) | EP2238547A1 (zh) |
JP (1) | JP5363506B2 (zh) |
KR (1) | KR101507629B1 (zh) |
CN (1) | CN101911075B (zh) |
WO (1) | WO2009090176A1 (zh) |
Families Citing this family (61)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US8732794B2 (en) * | 2007-08-13 | 2014-05-20 | Trusteer Ltd. | Browser plug-in firewall |
US7664862B2 (en) * | 2008-01-14 | 2010-02-16 | International Business Machines Corporation | Browser-based proxy server for customization and distribution of existing applications |
US9081956B2 (en) * | 2008-05-26 | 2015-07-14 | Trusteer Ltd. | Remote DOM access |
US20110093801A1 (en) * | 2008-06-30 | 2011-04-21 | Kazuya Koyama | Application extension system, extension method, extension program |
US8965926B2 (en) | 2008-12-17 | 2015-02-24 | Microsoft Corporation | Techniques for managing persistent document collections |
JP5118256B2 (ja) * | 2009-10-29 | 2013-01-16 | 楽天株式会社 | リンク要素の前面にオブジェクトを表示するためのオブジェクト制御方法 |
CN102193953B (zh) * | 2010-03-17 | 2017-04-12 | 日电(中国)有限公司 | 桌面应用迁移系统和方法 |
CN102200976B (zh) * | 2010-03-23 | 2014-11-05 | 日电(中国)有限公司 | 桌面应用转换成网络应用的定制系统和方法 |
US8977693B2 (en) * | 2010-04-27 | 2015-03-10 | Mindware, Inc. | Browser based application development framework |
US20120137233A1 (en) * | 2010-05-26 | 2012-05-31 | Nokia Corporation | Method and Apparatus for Enabling Generation of Multiple Independent User Interface Elements from a Web Page |
CN102271142B (zh) * | 2010-06-01 | 2015-01-28 | 中兴通讯股份有限公司 | 一种业务开发平台、系统及方法 |
US9519425B1 (en) * | 2010-06-28 | 2016-12-13 | EMC IP Holding Company, LLC | Techniques for device user interfaces |
US8370899B2 (en) * | 2010-08-11 | 2013-02-05 | Emc Corporation | Disposable browser for commercial banking |
US9160693B2 (en) | 2010-09-27 | 2015-10-13 | Blackberry Limited | Method, apparatus and system for accessing applications and content across a plurality of computers |
US8903894B2 (en) * | 2010-11-29 | 2014-12-02 | Hughes Network Systems, Llc | Computer networking system and method with javascript injection for web page response time determination |
US8555384B1 (en) * | 2010-12-10 | 2013-10-08 | Amazon Technologies, Inc. | System and method for gathering data for detecting fraudulent transactions |
US8782174B1 (en) | 2011-03-31 | 2014-07-15 | Emc Corporation | Uploading and downloading unsecured files via a virtual machine environment |
KR20120134287A (ko) * | 2011-06-02 | 2012-12-12 | 주식회사 비씨클라우드 | 동적 웹 라우팅 방법 |
US9621406B2 (en) | 2011-06-30 | 2017-04-11 | Amazon Technologies, Inc. | Remote browsing session management |
US8577963B2 (en) | 2011-06-30 | 2013-11-05 | Amazon Technologies, Inc. | Remote browsing session between client browser and network based browser |
US8706860B2 (en) | 2011-06-30 | 2014-04-22 | Amazon Technologies, Inc. | Remote browsing session management |
EP2727024B1 (en) * | 2011-06-30 | 2019-05-15 | Amazon Technologies, Inc. | Remote browsing session management |
US9195768B2 (en) | 2011-08-26 | 2015-11-24 | Amazon Technologies, Inc. | Remote browsing session management |
US8930492B2 (en) | 2011-10-17 | 2015-01-06 | Blackberry Limited | Method and electronic device for content sharing |
EP2587397A1 (en) * | 2011-10-28 | 2013-05-01 | Telefonaktiebolaget LM Ericsson (publ) | Browser device access proxy |
US9391832B1 (en) * | 2011-12-05 | 2016-07-12 | Menlo Security, Inc. | Secure surrogate cloud browsing |
US9015809B2 (en) | 2012-02-20 | 2015-04-21 | Blackberry Limited | Establishing connectivity between an enterprise security perimeter of a device and an enterprise |
US9348927B2 (en) | 2012-05-07 | 2016-05-24 | Smart Security Systems Llc | Systems and methods for detecting, identifying and categorizing intermediate nodes |
US9489356B2 (en) | 2012-05-07 | 2016-11-08 | Digital Guardian, Inc. | Enhanced document and event mirroring for accessing internet content |
US9325676B2 (en) | 2012-05-24 | 2016-04-26 | Ip Ghoster, Inc. | Systems and methods for protecting communications between nodes |
US10778659B2 (en) | 2012-05-24 | 2020-09-15 | Smart Security Systems Llc | System and method for protecting communications |
US8769631B2 (en) * | 2012-06-18 | 2014-07-01 | Intel Corporation | Creating a web proxy inside a browser |
US10521250B2 (en) | 2012-09-12 | 2019-12-31 | The Directv Group, Inc. | Method and system for communicating between a host device and user device through an intermediate device using a composite video signal |
US9137501B2 (en) * | 2012-09-12 | 2015-09-15 | The Directv Group, Inc. | Method and system for communicating between a host device and user device through an intermediate device using syntax translation |
US9535722B2 (en) | 2012-09-12 | 2017-01-03 | The Directv Group, Inc. | Method and system for communicating between a host device and a user device through an intermediate device using a composite graphics signal |
CN102917074B (zh) * | 2012-11-09 | 2016-08-03 | 北京奇虎科技有限公司 | 一种实现服务器端浏览器的方法和服务器 |
CN102981705B (zh) * | 2012-11-09 | 2018-04-27 | 北京奇虎科技有限公司 | 服务器端浏览器实现方法及服务器 |
JP5945060B2 (ja) * | 2013-02-12 | 2016-07-05 | 日本電信電話株式会社 | 出力機能分割システム |
JP6354197B2 (ja) | 2013-03-15 | 2018-07-11 | 株式会社リコー | 配信制御システム、配信制御方法、及びプログラム |
JP6398215B2 (ja) | 2013-03-15 | 2018-10-03 | 株式会社リコー | 配信制御システム、配信システム、配信制御方法、及びプログラム |
JP2014200076A (ja) | 2013-03-15 | 2014-10-23 | 株式会社リコー | 配信制御システム、配信制御方法、及びプログラム |
CN105247875B (zh) | 2013-03-15 | 2019-03-08 | 株式会社理光 | 分发控制系统和分发系统 |
US9497492B2 (en) | 2013-03-15 | 2016-11-15 | Ricoh Company, Limited | Distribution control system, distribution system, distribution control method, and computer-readable storage medium |
JP2014199648A (ja) | 2013-03-15 | 2014-10-23 | 株式会社リコー | 配信制御システム、配信システム、配信制御方法、及びプログラム |
JP6337499B2 (ja) | 2013-03-15 | 2018-06-06 | 株式会社リコー | 配信制御システム、配信システム、配信制御方法、及びプログラム |
JP6323048B2 (ja) | 2013-03-15 | 2018-05-16 | 株式会社リコー | 配信システム、配信方法、及びプログラム |
JP6369043B2 (ja) * | 2013-03-15 | 2018-08-08 | 株式会社リコー | 配信制御システム、配信システム、配信制御方法、及びプログラム |
US9645983B1 (en) * | 2013-06-18 | 2017-05-09 | Amazon Technologies, Inc. | Modifying a document at a script processing server using a client device's state information |
JP6086490B2 (ja) * | 2013-07-25 | 2017-03-01 | 日本電信電話株式会社 | 情報処理装置、情報処理方法、及び情報処理プログラム |
US9916720B2 (en) | 2013-08-02 | 2018-03-13 | Bally Gaming, Inc. | Intelligent wagering game content distribution |
WO2015070260A1 (en) * | 2013-11-11 | 2015-05-14 | Adallom, Inc. | Cloud service security broker and proxy |
JP6148625B2 (ja) * | 2014-01-08 | 2017-06-14 | 日本電信電話株式会社 | コンテンツ分散制御システム、コンテンツ分散制御装置、機器、コンテンツ分散制御方法およびコンテンツ分散制御プログラム |
US10078712B2 (en) * | 2014-01-14 | 2018-09-18 | Energid Technologies Corporation | Digital proxy simulation of robotic hardware |
EP3100405A4 (en) | 2014-01-29 | 2017-08-30 | Smart Security Systems LLC | Systems and methods for protecting communications |
US10324702B2 (en) | 2014-09-12 | 2019-06-18 | Microsoft Israel Research And Development (2002) Ltd. | Cloud suffix proxy and a method thereof |
US20180196649A1 (en) * | 2015-07-20 | 2018-07-12 | Ent. Services Development Corporation Lp | Web application adjustment for different browsers |
US11194930B2 (en) | 2018-04-27 | 2021-12-07 | Datatrendz, Llc | Unobtrusive systems and methods for collecting, processing and securing information transmitted over a network |
CN110941401A (zh) * | 2018-09-25 | 2020-03-31 | 北京京东尚科信息技术有限公司 | 一种打印方法和装置 |
US10637956B1 (en) * | 2019-10-01 | 2020-04-28 | Metacluster It, Uab | Smart proxy rotator |
JP6806351B1 (ja) * | 2020-03-06 | 2021-01-06 | 株式会社C−Rise | 情報処理方法、コンピュータプログラム及び情報処理装置 |
US11611482B1 (en) | 2020-06-12 | 2023-03-21 | Menlo Security, Inc. | Bandwidth throttling |
Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1114878C (zh) * | 1997-01-24 | 2003-07-16 | 摩托罗拉公司 | 代理主计算机和用于在一个浏览器和一个代理计算机之间访问和检索信息的方法 |
Family Cites Families (21)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5727159A (en) | 1996-04-10 | 1998-03-10 | Kikinis; Dan | System in which a Proxy-Server translates information received from the Internet into a form/format readily usable by low power portable computers |
US5918013A (en) | 1996-06-03 | 1999-06-29 | Webtv Networks, Inc. | Method of transcoding documents in a network environment using a proxy server |
US5918159A (en) * | 1997-08-04 | 1999-06-29 | Fomukong; Mundi | Location reporting satellite paging system with optional blocking of location reporting |
JP3396177B2 (ja) * | 1999-01-26 | 2003-04-14 | インターナショナル・ビジネス・マシーンズ・コーポレーション | ウェブページカスタマイズシステム |
US6912691B1 (en) * | 1999-09-03 | 2005-06-28 | Cisco Technology, Inc. | Delivering voice portal services using an XML voice-enabled web server |
US6738803B1 (en) | 1999-09-03 | 2004-05-18 | Cisco Technology, Inc. | Proxy browser providing voice enabled web application audio control for telephony devices |
US6829746B1 (en) | 1999-12-09 | 2004-12-07 | International Business Machines Corp. | Electronic document delivery system employing distributed document object model (DOM) based transcoding |
AU2000240547A1 (en) | 2000-03-31 | 2001-10-15 | Telogy Networks, Inc. | Proxy internet browsing |
US20020026507A1 (en) | 2000-08-30 | 2002-02-28 | Sears Brent C. | Browser proxy client application service provider (ASP) interface |
JP4644940B2 (ja) * | 2001-01-17 | 2011-03-09 | ソニー株式会社 | 課金方法、並びにスクリプト変換システム及び方法 |
US6944665B2 (en) * | 2001-09-24 | 2005-09-13 | International Business Machines Corporation | Method and system for delivering accessibility using a distributed environment |
US6970918B2 (en) * | 2001-09-24 | 2005-11-29 | International Business Machines Corporation | System and method for transcoding support of web content over secure connections |
US6880014B2 (en) * | 2001-09-24 | 2005-04-12 | International Business Machines Corporation | Method and system of use of transcode directives for distributed control of transcoding servers |
US7424459B2 (en) * | 2002-03-01 | 2008-09-09 | Lightsurf Technologies, Inc. | System providing methods for dynamic customization and personalization of user interface |
JP4571509B2 (ja) * | 2002-12-02 | 2010-10-27 | エスアーペー アーゲー | セッション復帰可能な、処理状態を把握するウェブアプリケーション |
US20040183817A1 (en) * | 2002-12-03 | 2004-09-23 | Bitstream Inc. | Methods, systems, and programming for scaled display of web pages |
US7853882B2 (en) * | 2006-04-11 | 2010-12-14 | International Business Machines Corporation | Portlets having different portlet specific enablement states |
US20080005282A1 (en) * | 2006-07-03 | 2008-01-03 | Dewey Gaedcke | Method for displaying user generated content in a web browser |
US20080077982A1 (en) * | 2006-09-22 | 2008-03-27 | Bea Systems, Inc. | Credential vault encryption |
US8775603B2 (en) * | 2007-05-04 | 2014-07-08 | Sitespect, Inc. | Method and system for testing variations of website content |
US7664862B2 (en) * | 2008-01-14 | 2010-02-16 | International Business Machines Corporation | Browser-based proxy server for customization and distribution of existing applications |
-
2008
- 2008-01-14 US US12/013,559 patent/US7664862B2/en not_active Expired - Fee Related
- 2008-05-31 US US12/131,080 patent/US8078694B2/en not_active Expired - Fee Related
-
2009
- 2009-01-14 WO PCT/EP2009/050335 patent/WO2009090176A1/en active Application Filing
- 2009-01-14 CN CN200980102193.9A patent/CN101911075B/zh not_active Expired - Fee Related
- 2009-01-14 EP EP09702008A patent/EP2238547A1/en not_active Withdrawn
- 2009-01-14 KR KR1020107014509A patent/KR101507629B1/ko not_active IP Right Cessation
- 2009-01-14 JP JP2010541802A patent/JP5363506B2/ja not_active Expired - Fee Related
Patent Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1114878C (zh) * | 1997-01-24 | 2003-07-16 | 摩托罗拉公司 | 代理主计算机和用于在一个浏览器和一个代理计算机之间访问和检索信息的方法 |
Non-Patent Citations (1)
Title |
---|
Leslie Wu等.Remixing the web: Tailoring Applications using Programmable Proxies inside Web Browsers.《Computer Science Technical Reports of Stanford University》.2007,1-4. * |
Also Published As
Publication number | Publication date |
---|---|
US8078694B2 (en) | 2011-12-13 |
EP2238547A1 (en) | 2010-10-13 |
KR20100113071A (ko) | 2010-10-20 |
CN101911075A (zh) | 2010-12-08 |
KR101507629B1 (ko) | 2015-03-31 |
JP5363506B2 (ja) | 2013-12-11 |
US7664862B2 (en) | 2010-02-16 |
US20090182844A1 (en) | 2009-07-16 |
US20090182803A1 (en) | 2009-07-16 |
WO2009090176A1 (en) | 2009-07-23 |
JP2011511974A (ja) | 2011-04-14 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN101911075B (zh) | 用于现有应用的定制和分发的基于浏览器的代理服务器 | |
US20240361998A1 (en) | Application Support for Network Devices | |
US8789015B2 (en) | Integrated application localization | |
US9715370B2 (en) | Method and system for providing content | |
CN110297635B (zh) | 页面的显示方法、装置、设备以及存储介质 | |
US8549395B2 (en) | Method and system for transforming an integrated webpage | |
US9442744B2 (en) | Multilingual build integration for compiled applications | |
US7761601B2 (en) | Strategies for transforming markup content to code-bearing content for consumption by a receiving device | |
CN112800370B (zh) | 业务单据的处理方法、装置、计算机设备和存储介质 | |
CN103246489B (zh) | 打印系统、打印服务器和控制方法 | |
CN112685029B (zh) | 一种可视化模板的生成方法、装置、设备及存储介质 | |
KR101774267B1 (ko) | 전자 문서의 공동 편집을 위한 협업 지원 장치 및 그 동작 방법 | |
US20100058481A1 (en) | Non-displaying method of secret information and information processing device | |
JP7538948B2 (ja) | 画像処理方法及び装置、並びにコンピュータ可読記憶媒体 | |
CN103530338A (zh) | 在计算设备上进行页面渲染的框架及生成页面的方法 | |
JP5039946B2 (ja) | クライアント装置およびサーバ装置の間の通信を中継する技術 | |
KR20090000199A (ko) | 웹 서버 어플리케이션 프레임워크와 상기 프레임워크를이용한 웹 어플리케이션 처리 방법 및 이를 구현할 수 있는컴퓨터로 읽을 수 있는 기록 매체 | |
Pequeno et al. | FrameIDTV: a framework for developing interactive applications on digital television environments | |
JP7014960B2 (ja) | 情報処理装置、サーバ、その処理方法及びプログラム | |
AU2019222873A1 (en) | Method and system for providing content | |
CN113296759B (zh) | 用户界面处理方法、用户界面处理系统、设备及存储介质 | |
KR101673937B1 (ko) | 바로 가기 객체의 생성 및 사용을 위한 장치, 시스템 및 방법 | |
KR20090040212A (ko) | 웹페이지 연결 시스템 및 그 연결방법 | |
CN118092883A (zh) | 一种前端项目嵌套方法、装置、存储介质及计算机设备 | |
JP2011059751A (ja) | プログラム生成システムおよびプログラム生成装置およびプログラム生成方法およびプログラムならびに記録媒体 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
C14 | Grant of patent or utility model | ||
GR01 | Patent grant | ||
CF01 | Termination of patent right due to non-payment of annual fee | ||
CF01 | Termination of patent right due to non-payment of annual fee |
Granted publication date: 20150225 Termination date: 20190114 |