CN105379195B - 信息共享方法和设备 - Google Patents
信息共享方法和设备 Download PDFInfo
- Publication number
- CN105379195B CN105379195B CN201480038256.XA CN201480038256A CN105379195B CN 105379195 B CN105379195 B CN 105379195B CN 201480038256 A CN201480038256 A CN 201480038256A CN 105379195 B CN105379195 B CN 105379195B
- Authority
- CN
- China
- Prior art keywords
- webpage
- shared
- client
- url
- sharing
- 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
- 238000000034 method Methods 0.000 title claims abstract description 94
- 238000004891 communication Methods 0.000 claims abstract description 183
- 230000004044 response Effects 0.000 claims description 190
- 235000014510 cooky Nutrition 0.000 claims description 133
- 230000008859 change Effects 0.000 claims description 43
- 238000013507 mapping Methods 0.000 claims description 17
- 238000001514 detection method Methods 0.000 claims description 9
- 230000004048 modification Effects 0.000 claims description 7
- 238000012986 modification Methods 0.000 claims description 7
- 230000000977 initiatory effect Effects 0.000 claims 6
- 230000001360 synchronised effect Effects 0.000 abstract description 21
- 238000010586 diagram Methods 0.000 description 16
- 239000003999 initiator Substances 0.000 description 16
- 230000000694 effects Effects 0.000 description 8
- 230000006870 function Effects 0.000 description 8
- 238000005516 engineering process Methods 0.000 description 6
- 238000012544 monitoring process Methods 0.000 description 4
- 230000007246 mechanism Effects 0.000 description 3
- 230000008520 organization Effects 0.000 description 2
- 230000008569 process Effects 0.000 description 2
- 230000011664 signaling Effects 0.000 description 2
- VYZAMTAEIAYCRO-UHFFFAOYSA-N Chromium Chemical compound [Cr] VYZAMTAEIAYCRO-UHFFFAOYSA-N 0.000 description 1
- 238000004590 computer program Methods 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
- 238000012545 processing Methods 0.000 description 1
- 238000009877 rendering Methods 0.000 description 1
- 238000006467 substitution reaction Methods 0.000 description 1
- 230000001960 triggered effect Effects 0.000 description 1
Classifications
-
- 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/07—User-to-user messaging in packet-switching networks, transmitted according to store-and-forward or real-time protocols, e.g. e-mail characterised by the inclusion of specific contents
- H04L51/18—Commands or executable codes
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L65/00—Network arrangements, protocols or services for supporting real-time applications in data packet communication
- H04L65/40—Support for services or applications
- H04L65/401—Support for services or applications wherein the services involve a main real-time session and one or more additional parallel real-time or time sensitive sessions, e.g. white board sharing or spawning of a subconference
- H04L65/4015—Support for services or applications wherein the services involve a main real-time session and one or more additional parallel real-time or time sensitive sessions, e.g. white board sharing or spawning of a subconference where at least one of the additional parallel sessions is real time or time sensitive, e.g. white board sharing, collaboration or spawning of a subconference
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L65/00—Network arrangements, protocols or services for supporting real-time applications in data packet communication
- H04L65/1066—Session management
- H04L65/1083—In-session procedures
- H04L65/1093—In-session procedures by adding participants; by removing participants
-
- 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]
- H04L67/025—Protocols based on web technology, e.g. hypertext transfer protocol [HTTP] for remote control or remote monitoring of applications
-
- 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/2866—Architectures; Arrangements
- H04L67/2895—Intermediate processing functionally located close to the data provider application, e.g. reverse proxies
-
- 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/2866—Architectures; Arrangements
- H04L67/30—Profiles
- H04L67/306—User profiles
-
- 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
- H04L67/561—Adding application-functional data or data for application control, e.g. adding metadata
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L12/00—Data switching networks
- H04L12/02—Details
- H04L12/16—Arrangements for providing special services to substations
- H04L12/18—Arrangements for providing special services to substations for broadcast or conference, e.g. multicast
- H04L12/1813—Arrangements for providing special services to substations for broadcast or conference, e.g. multicast for computer conferences, e.g. chat rooms
- H04L12/1827—Network arrangements for conference optimisation or adaptation
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Multimedia (AREA)
- Business, Economics & Management (AREA)
- General Business, Economics & Management (AREA)
- Library & Information Science (AREA)
- Information Transfer Between Computers (AREA)
Abstract
本发明实施例提供一种信息共享方法和设备,包括:第一客户端向反向代理服务器发送待共享网页的URL,以使反向代理服务器将待共享网页的URL和通信网页的URL映射为共享URL,然后,第一客户端获取该共享URL,根据该共享URL获取包含第一客户端的用户背景信息的第一待共享网页,并将该共享URL发送给第二客户端,在第一客户端和第二客户端的URL同步之后,第一客户端将自己的DOM发送给第二客户端,以使第二客户端根据第一客户端的DOM修改自己的DOM,保持与第二客户端的DOM同步,在第一客户端和第二客户端的DOM同步后,两个用户之间实现信息共享。所述方法,即使通信双方的用户背景信息不同,也能够实现通信双方的信息同步。
Description
技术领域
本发明涉及通信技术,尤其涉及一种信息共享方法和设备。
背景技术
桌面共享和文档共享是企业办公通信中的重要功能,通过桌面共享和文档共享使得用户通过文本、语音进行通信的同时,能够将自己计算机本地的文档等资料传送给对方,让对方得到更多的信息。同样,在基于web技术的通信中也有类似的信息共享需求。例如,在企业通信或电子商务中,用户浏览了一些互联网上的文本、图片、音频、视频等数据,或者浏览了企业内部文档、电子商务中的产品信息等,此时用户希望通过与同事或客服通信了解更多的信息。
现有技术中,在web领域,chrome等浏览器也有获取屏幕图像的功能,该功能与网页实时通信(Web Real-Time Communication,简称WebRTC)技术结合以实现信息共享。现有的web协同浏览技术,一般是通过统一资源定位符(Uniform Resource Locator,简称URL)进行同步,即共享发起方把自己的URL发给共享接收方,共享接收方打开该URL从服务器获得相同的网页。但是,即使共享发起方和共享接收方打开相同的URL,通信双方用户由于用户背景信息不同看到的网页也不同,因此,通信双方无法实现信息共享。
发明内容
本发明实施例提供一种信息共享方法和设备,使得通信双方在用户背景信息不同的情况下也能够实现信息共享。
本发明第一方面提供一种信息共享方法,包括:
第一客户端通过通信网页向反向代理服务器发送待共享网页的统一资源定位符URL,以使所述反向代理服务器将所述待共享网页的URL和所述通信网页的URL映射为共享URL,所述共享URL中包含所述待共享网页的共享URL和所述通信网页的共享URL;
所述第一客户端接收所述反向代理服务器发送的所述共享URL;
所述第一客户端根据所述共享URL获取第一待共享网页,所述第一待共享网页包含所述第一客户端的用户背景信息;
所述第一客户端向第二客户端发送所述共享URL,以使所述第二客户端根据所述共享URL获取第二待共享网页,所述第二待共享网页不包含所述第一客户端的用户背景信息;
所述第一客户端向所述第二客户端发送所述第一客户端的文件对象模型DOM,所述第一客户端的DOM与所述第一待共享网页对应,以使所述第二客户端根据所述第一客户端的DOM修改所述第二客户端的DOM,并根据修改后的所述第二客户端的DOM和所述第二待共享网页生成所述第一待共享网页。
结合本发明第一方面,在本发明第一方面的第一种可能的实现方式中,所述第一客户端根据所述共享URL获取第一待共享网页,包括:
所述第一客户端根据所述共享URL获取合并网页,所述合并网页中显示有所述通信网页和所述待共享网页,所述合并网页的URL为所述共享URL;
所述第一客户端通过所述合并网页和所述第一客户端的用户背景信息获取所述第一待共享网页。
结合本发明第一方面的第一种可能的实现方式,在本发明第一方面的第二种可能的实现方式中,所述第一客户端根据所述共享URL获取合并网页,包括:
所述第一客户端根据所述共享URL中的所述通信网页的共享URL和所述待共享网页的共享URL,将所述待共享网页嵌入到所述通信网页中形成所述合并网页;或者,
所述第一客户端通过所述共享URL接收所述反向代理服务器发送的所述合并网页,所述合并网页是所述反向代理服务器将所述通信网页以插件的方式***所述待共享网页生成的。
结合本发明第一方面的第一种和第二种可能的实现方式,在本发明第一方面的第三种可能的实现方式中,所述用户背景信息包括:所述待共享网页对应的cookie和session;
所述第一客户端通过所述合并网页和所述第一客户端的用户背景信息获取所述第一待共享网页,包括:
所述第一客户端通过所述合并网页,向所述反向代理服务器发送请求以获取所述第一待共享网页,所述请求中包含所述cookie,所述cookie中包含所述session的标识ID;
所述第一客户端从所述反向代理服务器接收所述第一待共享网页,所述第一待共享网页是所述反向代理服务器根据所述请求从共享网站获取的。
结合本发明第一方面的第三种可能的实现方式,在本发明第一方面的第四种可能的实现方式中,所述第一客户端通过所述合并网页,向所述反向代理服务器发送请求以获取所述第一待共享网页,包括:
所述第一客户端向所述反向代理服务器发送第一页面请求,所述第一页面请求中包括所述待共享网页的共享URL、所述cookie,所述cookie中包含所述session的ID,以使所述反向代理服务器将所述待共享网页的共享URL修改为所述待共享网页的URL以生成第二页面请求,并向所述共享网站发送所述第二页面请求;
则所述第一客户端从所述反向代理服务器接收所述第一待共享网页,包括:所述第一客户端接收第一页面响应,所述第一页面响应中包括所述第一待共享网页的内容,所述第一页面响应是所述反向代理服务器根据所述共享网站针对所述第二页面请求返回的第二页面响应向所述第一客户端发送的。
结合本发明第一方面的第一种和第二种可能的实现方式,在本发明第一方面的第五种可能的实现方式中,所述用户背景信息包括:所述待共享网页对应的cookie、session和用户权限信息;
所述第一客户端通过所述合并网页和所述第一客户端的用户背景信息获取所述第一待共享网页,包括:
所述第一客户端向所述反向代理服务器发送第一页面请求,所述第一页面请求中包括所述待共享网页的共享URL、所述cookie和所述用户权限信息,所述cookie中包含所述session的标识ID,以使所述反向代理服务器将所述待共享网页的共享URL修改为所述待共享网页的URL以生成第二页面请求,并向共享网站发送所述第二页面请求;
所述第一客户端接收第一页面响应,所述第一页面响应中包括所述第一待共享网页的内容,所述第一待共享网页的内容为所述共享网站根据所述用户背景信息确定的,所述第一页面响应是所述反向代理服务器根据所述共享网站针对所述第二页面请求返回的第二页面响应向所述第一客户端发送的。
结合本发明第一方面以及第一方面的第一种至第五种可能的实现方式,在本发明第一方面的第六种可能的实现方式中,在所述第一客户端向所述第二客户端发送所述第一客户端的DOM之前,所述方法还包括:
所述第一客户端根据设置隐藏需要保密的信息。
结合本发明第一方面以及第一方面的第一种至第六种可能的实现方式,在本发明第一方面的第七种可能的实现方式中,所述方法还包括:
若所述第一客户端确定所述第一客户端的DOM发生变化,所述第一客户端将所述第一客户端的DOM的变化信息发送给所述第二客户端,以使所述第二客户端根据所述变化信息修改所述第二客户端的DOM。
结合本发明第一方面以及第一方面的第一种至第六种可能的实现方式,在本发明第一方面的第八种可能的实现方式中,所述方法还包括:
在所述第一客户端检测到输入设备输入的输入信息时,将所述输入信息发送给所述第二客户端,以使所述第二客户端根据所述输入信息修改所述第二客户端的DOM。
本发明第二方面提供一种信息共享方法,包括:
第二客户端接收第一客户端发送的共享统一资源定位符URL,所述共享URL是反向代理服务器根据所述第一客户端通过通信网页发送的待共享网页的URL和通信网页的URL映射得到的,所述共享URL中包含所述待共享网页的共享URL和所述通信网页的共享URL;
所述第二客户端根据所述共享URL获取第二待共享网页,所述第二待共享网页不包含所述第一客户端的用户背景信息;
所述第二客户端接收所述第一客户端发送的所述第一客户端的文件对象模型DOM,所述第一客户端的DOM与第一待共享网页对应,所述第一待共享网页包含所述第一客户端的用户背景信息;
所述第二客户端根据所述第一客户端的DOM修改所述第二客户端的DOM,并根据修改后的所述第二客户端的DOM和所述第二待共享网页生成所述第一待共享网页。
结合本发明第二方面,在本发明第二方面的第一种可能的实现方式中,所述第二客户端根据所述共享URL获取第二待共享网页,包括:
所述第二客户端向所述反向代理服务器发送第一页面请求,所述第一页面请求中包括所述待共享网页的共享URL,以使所述反向代理服务器将所述待共享网页的共享URL修改为所述待共享网页的URL以生成第二页面请求,并向共享网站发送所述第二页面请求;
所述第二客户端接收第一页面响应,所述第一页面响应中包括所述第二待共享网页的内容,所述第一页面响应是所述反向代理服务器根据所述共享网站针对所述第二页面请求返回的第二页面响应向所述第二客户端发送的。
结合本发明第二方面以及第二方面的第一种可能的实现方式,在本发明第二方面的第二种可能的实现方式中,所述方法还包括:
所述第二客户端接收所述第一客户端发送的所述第一客户端的DOM的变化信息,根据所述变化信息修改所述第二客户端的DOM,所述变化信息是所述第一客户端在检测到所述第一客户端的DOM发生变化时向所述第二客户端发送的。
结合本发明第二方面以及第二方面的第一种可能的实现方式,在本发明第二方面的第三种可能的实现方式中,所述方法还包括:
所述第二客户端接收所述第一客户端发送的输入信息,根据所述输入信息修改所述第二客户端的DOM,所述输入信息是所述第一客户端在检测到所述用户通过输入设备输入所述输入信息时向所述第二客户端发送的。
本发明第三方面提供一种信息共享方法,包括:
反向代理服务器接收客户端通过通信网页发送的待共享网页的统一资源定位符URL;
所述反向代理服务器将所述待共享网页的URL和所述通信网页的URL映射为共享URL,所述共享URL中包含所述待共享网页的共享URL和所述通信网页的共享URL;
所述反向代理服务器将所述共享URL发送给所述客户端,以使所述客户端根据所述共享URL获取待共享网页,所述待共享网页包含所述客户端的用户背景信息。
结合本发明第三方面,在本发明第三方面的第一种可能的实现方式中,所述用户背景信息包括:所述待共享网页对应的cookie和session,所述方法还包括:
所述反向代理服务器接收所述客户端发送的请求,所述请求中包含所述cookie,所述cookie中包含所述session的标识ID;
所述反向代理服务器根据所述请求从共享网站获取所述待共享网页,并将所述待共享网页发送给所述客户端。
结合本发明第三方面的第一种可能的实现方式,在本发明第三方面的第二种可能的实现方式中,所述反向代理服务器接收所述客户端发送的请求,包括:
所述反向代理服务器接收所述客户端发送的第一页面请求,所述第一页面请求中包括所述待共享网页的共享URL、所述cookie,所述cookie中包含所述session的ID;
所述反向代理服务器根据所述请求从共享网站获取所述待共享网页,并将所述待共享网页发送给所述客户端,包括:
所述反向代理服务器将所述第一页面请求中的所述待共享网页的共享URL修改为所述待共享网页的URL以生成第二页面请求,并将所述第二页面请求发送给共享网站;
所述反向代理服务器接收所述共享网站发送的第二页面响应,所述第二页面响应中包括所述待共享网页的URL以及所述待共享网页的内容;
所述反向代理服务器将所述第二页面响应中的所述待共享网页的URL修改为所述待共享网页的共享URL以生成第一页面响应,并将所述第一页面响应发送给所述客户端,所述第一页面响应中包括所述待共享网页的内容。
结合本发明第三方面,在本发明第三方面的第三种可能的实现方式中,所述用户背景信息包括:所述待共享网页对应的cookie、session和用户权限信息,所述方法还包括:
所述反向代理服务器接收所述客户端发送的第一页面请求,所述第一页面请求中包括所述待共享网页的共享URL、所述cookie和所述用户权限信息,所述cookie中包含所述session的标识ID;
所述反向代理服务器将所述第一页面请求中的所述待共享网页的共享URL修改为所述待共享网页的URL以生成第二页面请求,并将所述第二页面请求发送给共享网站;
所述反向代理服务器接收所述共享网站发送的第二页面响应,所述第二页面响应中包括所述待共享网页的URL和所述待共享网页的内容,所述待共享网页的内容为所述共享网站根据所述用户背景信息确定的;
所述反向代理服务器将所述第二页面响应中的所述待共享网页的URL修改为所述待共享网页的共享URL以生成第一页面响应,并将所述第一页面响应发送给所述客户端,所述第一页面响应中包括所述待共享网页的内容。
本发明第四方面提供一种第一客户端,包括:
发送模块,用于通过通信网页向反向代理服务器发送待共享网页的统一资源定位符URL,以使所述反向代理服务器将所述待共享网页的URL和所述通信网页的URL映射为共享URL,所述共享URL中包含所述待共享网页的共享URL和所述通信网页的共享URL;
接收模块,用于接收所述反向代理服务器发送的所述共享URL;
获取模块,用于根据所述共享URL获取第一待共享网页,所述第一待共享网页包含所述第一客户端的用户背景信息;
所述发送模块,还用于向第二客户端发送所述共享URL,以使所述第二客户端根据所述共享URL获取第二待共享网页,所述第二待共享网页不包含所述第一客户端的用户背景信息;
所述发送模块,还用于向所述第二客户端发送所述第一客户端的文件对象模型DOM,所述第一客户端的DOM与所述第一待共享网页对应,以使所述第二客户端根据所述第一客户端的DOM修改所述第二客户端的DOM,并根据修改后的所述第二客户端的DOM和所述第二待共享网页生成所述第一待共享网页。
结合本发明第四方面,在本发明第四方面的第一种可能的实现方式中,所述获取模块包括:
合并网页获取单元,用于根据所述共享URL获取合并网页,所述合并网页中显示有所述通信网页和所述待共享网页,所述合并网页的URL为所述共享URL;
待共享网页获取单元,用于通过所述合并网页和所述第一客户端的用户背景信息获取所述第一待共享网页。
结合本发明第四方面的第一种可能的实现方式,在本发明第四方面的第二种可能的实现方式中,所述合并网页获取单元具体用于:
根据所述共享URL中的所述通信网页的共享URL和所述待共享网页的共享URL,将所述待共享网页嵌入到所述通信网页中形成所述合并网页;或者,
通过所述共享URL接收所述反向代理服务器发送的所述合并网页,所述合并网页是所述反向代理服务器将所述通信网页以插件的方式***所述待共享网页生成的。
结合本发明第四方面的第一种和第二种可能的实现方式,在本发明第四方面的第三种可能的实现方式中,所述用户背景信息包括:所述待共享网页对应的cookie和session,则所述待共享网页获取单元具体用于:
通过所述合并网页,向所述反向代理服务器发送请求以获取所述第一待共享网页,所述请求中包含所述cookie,所述cookie中包含所述session的标识ID;
从所述反向代理服务器接收所述第一待共享网页,所述第一待共享网页是所述反向代理服务器根据所述请求从共享网站获取的。
结合本发明第四方面的第三种可能的实现方式,在本发明第四方面的第四种可能的实现方式中,所述待共享网页获取单元具体用于:
向所述反向代理服务器发送第一页面请求,所述第一页面请求中包括所述待共享网页的共享URL、所述cookie,所述cookie中包含所述session的ID,以使所述反向代理服务器将所述待共享网页的共享URL修改为所述待共享网页的URL以生成第二页面请求,并向所述共享网站发送所述第二页面请求;
接收第一页面响应,所述第一页面响应中包括所述第一待共享网页的内容,所述第一页面响应是所述反向代理服务器根据所述共享网站针对所述第二页面请求返回的第二页面响应向所述第一客户端发送的。
结合本发明第四方面的第一种和第二种可能的实现方式,在本发明第四方面的第五种可能的实现方式中,所述用户背景信息包括:所述待共享网页对应的cookie、session和用户权限信息,则所述待共享网页获取单元具体用于:
向所述反向代理服务器发送第一页面请求,所述第一页面请求中包括所述待共享网页的共享URL、所述cookie和所述用户权限信息,所述cookie中包含所述session的标识ID,以使所述反向代理服务器将所述待共享网页的共享URL修改为所述待共享网页的URL以生成第二页面请求,并向共享网站发送所述第二页面请求;
接收第一页面响应,所述第一页面响应中包括所述第一待共享网页的内容,所述第一待共享网页的内容为所述共享网站根据所述用户背景信息确定的,所述第一页面响应是所述反向代理服务器根据所述共享网站针对所述第二页面请求返回的第二页面响应向所述第一客户端发送的。
结合本发明第四方面以及第四方面的第一种至第五种可能的实现方式,在本发明第四方面的第六种可能的实现方式中,在所述第一客户端向所述第二客户端发送所述第一客户端的DOM之前,所述方法还包括:
隐藏模块,用于在所述发送模块向所述第二客户端发送所述第一客户端的DOM之前,根据设置隐藏需要保密的信息。
结合本发明第四方面以及第四方面的第一种至第六种可能的实现方式,在本发明第四方面的第七种可能的实现方式中,还包括:
检测模块,用于确定所述第一客户端的DOM是否发生变化;
所述发送模块还用于,若所述监测模块确定所述第一客户端的DOM发生变化,将所述第一客户端的DOM的变化信息发送给所述第二客户端,以使所述第二客户端根据所述变化信息修改所述第二客户端的DOM。
结合本发明第四方面以及第四方面的第一种至第六种可能的实现方式,在本发明第四方面的第八种可能的实现方式中,还包括:
检测模块,用于检测输入设备输入的输入信息;
所述发送模块还用于,在所述检测模块检测到输入设备输入的输入信息时,将所述输入信息发送给所述第二客户端,以使所述第二客户端根据所述输入信息修改所述第二客户端的DOM。
本发明第五方面提供一种第二客户端,包括:
接收模块,用于接收第一客户端发送的共享统一资源定位符URL,所述共享URL是反向代理服务器根据所述第一客户端通过通信网页发送的待共享网页的URL和通信网页的URL映射得到的,所述共享URL中包含所述待共享网页的共享URL和所述通信网页的共享URL;
获取模块,用于根据所述共享URL获取第二待共享网页,所述第二待共享网页不包含所述第一客户端的用户背景信息;
所述接收模块,还用于接收所述第一客户端发送的所述第一客户端的文件对象模型DOM,所述第一客户端的DOM与第一待共享网页对应,所述第一待共享网页包含所述第一客户端的用户背景信息;
修改模块,用于根据所述第一客户端的DOM修改所述第二客户端的DOM,并根据修改后的所述第二客户端的DOM和所述第二待共享网页生成所述第一待共享网页。
结合本发明第五方面,在本发明第五方面的第一种可能的实现方式中,所述获取模块具体用于:
向所述反向代理服务器发送第一页面请求,所述第一页面请求中包括所述待共享网页的共享URL,以使所述反向代理服务器将所述待共享网页的共享URL修改为所述待共享网页的URL以生成第二页面请求,并向共享网站发送所述第二页面请求;
接收第一页面响应,所述第一页面响应中包括所述第二待共享网页的内容,所述第一页面响应是所述反向代理服务器根据所述共享网站针对所述第二页面请求返回的第二页面响应向所述第二客户端发送的。
结合本发明第五方面以及第五方面的第一种可能的实现方式,在本发明第五方面的第二种可能的实现方式中,所述接收模块,还用于接收所述第一客户端发送的所述第一客户端的DOM的变化信息,所述变化信息是所述第一客户端在检测到所述第一客户端的DOM发生变化时向所述第二客户端发送的;
所述修改模块,还用于根据所述变化信息修改所述第二客户端的DOM。
结合本发明第五方面以及第五方面的第一种可能的实现方式,在本发明第五方面的第三种可能的实现方式中,所述接收模块,还用于接收所述第一客户端发送的输入信息,所述输入信息是所述第一客户端在检测到所述用户通过输入设备输入所述输入信息时向所述第二客户端发送的;
所述修改模块,还用于根据所述输入信息修改所述第二客户端的DOM。
本发明第六方面提供一种反向代理服务器,包括:
接收模块,用于接收客户端通过通信网页发送的待共享网页的统一资源定位符URL;
映射模块,用于将所述待共享网页的URL和所述通信网页的URL映射为共享URL,所述共享URL中包含所述待共享网页的共享URL和所述通信网页的共享URL;
发送模块,用于将所述共享URL发送给所述客户端,以使所述客户端根据所述共享URL获取待共享网页,所述待共享网页包含所述客户端的用户背景信息。
结合本发明第六方面,在本发明第六方面的第一种可能的实现方式中,所述用户背景信息包括:所述待共享网页对应的cookie和session,所述反向代理服务器还包括:获取模块;
所述接收模块,还用于接收所述客户端发送的请求,所述请求中包含所述cookie,所述cookie中包含所述session的标识ID;
所述获取模块,用于根据所述请求从共享网站获取所述待共享网页,并将所述待共享网页发送给所述客户端。
结合本发明第六方面的第一种可能的实现方式,在本发明第六方面的第二种可能的实现方式中,所述接收模块具体用于:接收所述客户端发送的第一页面请求,所述第一页面请求中包括所述待共享网页的共享URL、所述cookie,所述cookie中包含所述session的ID;
所述获取模块具体用于:将所述第一页面请求中的所述待共享网页的共享URL修改为所述待共享网页的URL以生成第二页面请求,并将所述第二页面请求发送给共享网站;
接收所述共享网站发送的第二页面响应,所述第二页面响应中包括所述待共享网页的URL以及所述待共享网页的内容;
将所述第二页面响应中的所述待共享网页的URL修改为所述待共享网页的共享URL以生成第一页面响应,并将所述第一页面响应发送给所述客户端,所述第一页面响应中包括所述待共享网页的内容。
结合本发明第六方面,在本发明第六方面的第三种可能的实现方式中,所述用户背景信息包括:所述待共享网页对应的cookie、session和用户权限信息,所述反向代理服务器还包括:获取模块;
所述接收模块,还用于接收所述客户端发送的第一页面请求,所述第一页面请求中包括所述待共享网页的共享URL、所述cookie和所述用户权限信息,所述cookie中包含所述session的标识ID;
所述获取模块,用于将所述第一页面请求中的所述待共享网页的共享URL修改为所述待共享网页的URL以生成第二页面请求,并将所述第二页面请求发送给共享网站;
所述接收模块,还用于接收所述共享网站发送的第二页面响应,所述第二页面响应中包括所述待共享网页的URL和所述待共享网页的内容,所述待共享网页的内容为所述共享网站根据所述用户背景信息确定的;
所述获取模块,还用于将所述第二页面响应中的所述待共享网页的URL修改为所述待共享网页的共享URL以生成第一页面响应,所述第一页面响应中包括所述待共享网页的内容;
所述发送模块,还用于将所述第一页面响应发送给所述客户端。
本发明第七方面提供一种第一客户端,包括:处理器、存储器和***总线,所述处理器和所述存储器之间通过所述***总线连接并完成相互间的通信;
所述存储器,用于存储计算机执行指令;
所述处理器,用于运行所述计算机执行指令,执行如权利要求1至9任一所述的方法。
本发明第八方面提供一种第二客户端,包括:处理器、存储器和***总线,所述处理器和所述存储器之间通过所述***总线连接并完成相互间的通信;
所述存储器,用于存储计算机执行指令;
所述处理器,用于运行所述计算机执行指令,执行如权利要求10至13任一所述的方法。
本发明第九方面提供一种反向代理服务器,包括:处理器、存储器和***总线,所述处理器和所述存储器之间通过所述***总线连接并完成相互间的通信;
所述存储器,用于存储计算机执行指令;
所述处理器,用于运行所述计算机执行指令,执行如权利要求14至17任一所述的方法。
本发明实施例的信息共享方法和设备,第一客户端通过通信网页向反向代理服务器发送待共享网页的URL,以使反向代理服务器将待共享网页的URL和通信网页的URL映射为共享URL,然后,第一客户端获取该共享URL,根据该共享URL获取包含第一客户端的用户背景信息的第一待共享网页,并将该共享URL发送给第二客户端,实现双发的URL同步,在第一客户端和第二客户端URL同步之后,第一客户端将自己的DOM发送给第二客户端,以使第二客户端根据第一客户端的DOM修改自己的DOM,保持与第二客户端的DOM同步,在第一客户端和第二客户端的DOM同步后,两个用户之间实现信息共享。所述方法,即使通信双方的用户背景信息不同,也能够实现通信双方的信息同步。
附图说明
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作一简单地介绍,显而易见地,下面描述中的附图是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动性的前提下,还可以根据这些附图获得其他的附图。
图1为本发明信息共享方法实施例一的流程图;
图2为本发明实施例的网页映射过程的示意图;
图3为本发明信息共享方法实施例二的流程图;
图4为本发明信息共享方法实施例三的流程图;
图5为发明信息共享方法实施例四的信令流程图;
图6为本发明实施例提供的一种第一客户端的结构示意图;
图7为本发明实施例提供的另一种第一客户端的结构示意图;
图8为本发明实施例提供的一种第二客户端的结构示意图;
图9为本发明实施例提供的一种反向代理服务器的结构示意图;
图10为本发明实施例提供的又一种第一客户端的结构示意图;
图11为本发明实施例提供的另一种第二客户端的结构示意图;
图12为本发明实施例提供的另一种反向代理服务器的结构示意图。
具体实施方式
为使本发明实施例的目的、技术方案和优点更加清楚,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
现有的web协同浏览技术,通过使共享发起方和共享接收方的统一资源定位符(Uniform Resource Locator,简称URL)同步来实现,即共享发起方把自己的待共享网页的URL发给共享接收方,共享接收方打开该URL从web服务器,即共享网站获得相同的网页。但是,现有的web协同浏览技术没有考虑用户背景信息,用户背景信息主要是指保存在互联网上和用户使用的客户端本地的历史浏览数据,以及用户通过用户权限信息,如用户名、密码登录网站获取的数据。用户本地的历史浏览数据指保存在用户使用的终端上的Cookie信息,Cookie由网站侧生成,发送给客户端上的浏览器管理,浏览器下次请求同一网站时就发送该Cookie给网站侧,这样网站侧可以知道该用户是否为合法用户以及是否需要重新登录等,Cookies会将用户在网站上所打的文字或是一些选择都记录下来,当下次用户再访问同一个网站时,网站侧会依据Cookie里的内容来判断使用者,送出特定的网页内容给用户。互联网上的历史浏览数据主要是指保存在服务器端的session(会话)信息,session用来记录用户信息,session是客户端第一次访问服务器时,服务器为用户分配的,session的标识(ID)被存储在客户端的cookie中,而session的内容保存在服务器端。用户登录网站时,浏览器可以使用cookie中保存的session的ID登录网站。
由于用户背景信息不同,即使共享发起方和共享接收方打开相同的URL,双方用户看到的网页也不同。例如,用户A之前使用搜狐网站看过视频,那么当用户A再次打开搜狐网站观看视频时,用户A的终端会根据本地的cookie,自动将页面跳转到用户A上次观看的网页,而此时用户A需要和用户B共享该网页,用户A将该网页的URL发送给用户B,但由于用户A和用户B的cookie不同,用户B根据该URL打开的网页与用户A看到的网页不同。
现有技术的解决方案是修改待共享网页所在的网站,让待共享网页所在的共享网站通过设置支持共享逻辑的权限机制,从而实现共享,但是现有技术的方案需要对所有网站进行修改以实现任意网站的共享,修改网站工作量大,而且各网站之间由于安全问题不可能都支持共享权限。
本发明实施例提出一种信息共享方法,该方法的目的在于为通用的基于web的通信软件提供一种安全的协同浏览机制,使通信软件可以共享所有的web网页,并且在共享网页时能够考虑用户的信息安全问题。这里的通信软件是指任何实现通信功能的计算机程序(或程序的一部分),包括在客户端展现的“通信网页”或“通信网页”中的一部分,也包括服务器端的程序等。
为了实现本发明实施例的方法,有以下问题需要解决:
(1)Java描述性语言Javascript的跨域问题,当通信网页和待共享网页属于不同的网站时,由于Javascript的同源策略(Same-Origin Policy)限制,通信软件不能获取待共享网页的内容。同源策略是JavaScript中一个很重要的安全性限制,这一策略对于JavaScript代码能够访问的页面内容做了限制,即JavaScript只能访问与包含它的文档在同源的内容,所谓同源是指,域名、协议、端口相同。同源策略阻止从一个源加载的文档或脚本获取或设置另一个源加载的文档的属性。
(2)URL同步问题,一个网页相当于一个文件组织,该网页的网址指向一个主文件,该主文件中又通过相对路径引用对其他资源文件,如Javascript、级联样式表(CascadingStyle Sheet,简称CSS)、图片等文件。在共享发起方共享网页时,除了同步主文件本身外,还需同步URL以保持文件间的组织结构。
URL同步后,理论上通信双方可以得到相同的网页,但因为通信双方的背景信息不同,待共享网页所在的网站会返回不同的网页,或者javascript执行会得到不同结果。
(3)文件对象模型(Document Object Model,简称DOM)的获取和同步问题,DOM是网页解析、javascript执行后得到的数据结构,也是浏览器渲染网页的最后依据,共享发起方需要根据用户背景信息获取个性化的待共享网页,并将个性化的待共享网页同步给共享接收方。
针对上述三个问题,本发明实施例提出了以下解决方案:(1)Javascript的跨域问题,通过建立一个反向代理(Reverse Proxy)服务器,将待共享网页所在的网站和通信网页所在的网站映射为一个虚拟网站,共享发起方和共享接收方通过该虚拟网站的URL获取待共享网页的内容。反向代理服务器是指以代理服务器来接受Internet上的连接请求,然后将请求转发给内部网络上的服务器,并将从服务器上得到的结果返回给Internet上请求连接的客户端。而通常的代理服务器,只用于代理内部网络对Internet的连接请求,普通的Web代理服务器不支持外部对内部网络的访问请求。当一个代理服务器能够代理外部网络上的主机,访问内部网络时,提供这种代理服务的服务器称为反向代理服务器。(2)URL同步问题,共享发起方通过反向代理服务器打开待共享网页,并将共享URL发送给共享接收方,共享接收方通过该URL打开待共享网页,实现URL同步问题。(3)DOM获取和同步问题,共享发起方根据用户背景信息获取自己的个性化页面,并把自己的全部或部分DOM发给共享接收方,共享接收方修改自己DOM的内容,以使双方DOM同步。这里只是对本发明实施例方案的一个简单概述,以下将通过具体实施例对本发明实施例的方法进行详细说明。
图1为本发明信息共享方法实施例一的流程图,如图1所示,本实施例的方法可以包括以下步骤:
步骤101、第一客户端通过通信网页向反向代理服务器发送待共享网页的URL,以使反向代理服务器将该待共享网页的URL和该通信网页的URL映射为共享URL。
具体地,用户A在第一客户端打开通信网页,与通信网站建立连接,通信网站即通信网页所在的网站,并在通信网页中输入待共享网页的URL,第一客户端通过通信网页将待共享网页的URL发送给通信服务器,通信服务器为通信网站所在的服务器,通信服务器将待共享网页转发给反向代理服务器。反向代理服务器接收到该待共享网页的URL后,修改反向代理服务器的配置,将该待共享网页的URL和通信网页的URL映射为共享URL,即反向代理服务器将通信网页和待共享网页映射到同一个虚拟网站,该虚拟网站至少包含两个子页面:通信页面和待共享页面,该虚拟网站的URL为该共享URL,该共享URL至少包含两个子URL,分别称为通信页面的共享URL和待共享页面的共享URL。下文中未特别说明时,共享URL指这两个子URL组成的集合。这样通过反向代理服务器对待共享网页和通信网页进行访问时,在逻辑上就同属于一个网站,不存在Javascript的跨域问题,第一客户端上的通信软件就能够获取该待共享网页的内容,本发明实施例中第一客户端作为共享发起方。
如图2所示,用户通过espace通信软件进行通信,用户需要将华为网页共享给其他用户,espace通信软件显示的网页为通信网页,华为网页为待共享网页,例如,该通信网页的URL为http://www.espace.com,待共享网页的URL为http://www.huawei.com,反向代理服务器设置的虚拟网站的URL为http://www.reverseproxy.com,反向代理服务器将通信网页和待共享网页映射到虚拟网站,经过反向代理服务器映射后的通信网页的共享URL为http://www.reverseproxy.com/espace,经过反向代理服务器映射后的待共享网页的URL为http://www.reverseproxy.com/huawei,待共享网页的共享URL和通信网页的共享URL统称为共享URL。
以下将待共享网页所在的网站称为共享网站,将通信网页所在的网站称为通信网站,待共享网站所在的服务器称为共享服务器,通信网站所在的服务器称为通信服务器。反向代理服务器可以和通信网站设置在同一个服务器上,反向代理服务器也可以单独作为一个服务器。
步骤102、第一客户端接收反向代理服务器发送的共享URL。
在反向代理服务器将待共享网页的URL和通信网页的URL映射为共享URL之后,反向代理服务器将映射得到的该共享URL发送给第一客户端,具体地,反向代理服务器先将该共享URL发送给通信服务器,通信服务器将该共享URL转发给第一客户端。
步骤103、第一客户端根据该共享URL获取第一待共享网页,该第一待共享网页包含第一客户端的用户背景信息。
需要指出的是,该第一待共享网页包含第一客户端的用户背景信息是指该第一待共享网页是根据用户背景信息生成的,而并不表示该第一待共享页面中显示有用户背景信息。
第一客户端根据该共享URL获取第一待共享网页,具体为:第一客户端根据该共享URL获取合并网页,通过该合并网页打开待共享网页,该合并网页中显示有通信网页和待共享网页,该合并网页的URL为该共享URL。第一客户端通过合并网页打开待共享网页,根据第一客户端的用户背景信息获取该第一待共享网页。
第一客户端获取该合并网页具体有以下方式:第一种方式,第一客户端根据该共享URL中的通信网页的共享URL和待共享网页的共享URL,将待共享网页嵌入到通信网页中形成合并网页;第二种方式,第一客户端通过共享URL接收反向代理服务器发送的合并网页,该合并网页是反向代理服务器在待共享网页通过时,将通信网页以插件的方式***待共享网页生成的。
在第一种方式中,第一客户端获取到该共享URL后,可以通过iframe方式将待共享网页嵌入到通信网页,iframe一般用来包含别的页面,例如用户希望在自己的网站的网页中加载其他网站的内容,就可以通过在iframe中增加需要加载的其他网站的URL作为参数来实现。本实施例中,第一客户端通过iframe将待共享网页嵌入到通信网页生成合并网页,仍以图2所示的例子为例进行说明,待共享网页的共享URL为http://www.reverseproxy.com/huawei,通信网页的共享URL为http://www.reverseproxy.com/espace,反向代理服务器将待共享网页的URL作为参数,则iframe=http://www.reverseproxy.com/huawei iframe http://www.reverseproxy.com/espace。合并网页中同时显示待共享网页和通信网页,用户通过点击合并网页中用于显示待共享网页的待共享网页的共享URL打开待共享网页。需说明的是,针对待共享网页的共享URL,不同的用户背景信息打开待共享网页显示的页面不同。在第二种方式中,合并网页由反向代理服务器生成,具体地,在待共享网页经过反向代理服务器时,反向代理服务器通过修改待共享网页的内容,将待共享网页以插件的方式***通信网页。这样,就能够在合并网页中同时显示待共享网页和通信网页,用户通过点击合并网页中用于显示待共享网页的子网页,即待共享网页的共享URL打开待共享网页。
第一客户端可以通过以下两种方式获取第一待共享网页:
一种方式中,用户背景信息包括待共享网页对应的cookie和session,第一客户端通过合并网页和第一客户端的用户背景信息获取第一待共享网页,具体为:第一客户端通过合并网页向反向代理服务器发送请求以获取待共享网页,该请求中包含cookie,cookie中包含session的ID。反向代理服务器将第一客户端的请求发送给共享网站,共享网站根据session的ID确定session,并根据session和cookie返回包含第一客户端用户背景信息的第一待共享页面,第一客户端从反向代理服务器获取第一待共享网页。
可选地,第一客户端通过合并网页向反向代理服务器发送请求以获取第一待共享网页,具体为:第一客户端向反向代理服务器发送第一页面请求,该第一页面请求中包括待共享网页的共享URL,第一页面请求中还包含cookie,cookie中包含session的ID,以使反向代理服务器将该待共享网页的共享URL修改为待共享网页的URL以生成第二页面请求,并向共享网站发送该第二页面请求。第一客户端从反向代理服务器接收第一待共享网页的内容,具体为:第一客户端接收第一页面响应,第一页面响应中包括第一待共享网页的内容,第一页面响应是反向代理服务器根据共享网站针对第二页面请求返回的第二页面响应向第一客户端发送的。共享网站在接收到第二页面请求后,根据第二页面请求中的待共享网页的URL向反向代理服务器返回第二页面响应。反向代理服务器将第二页面响应中的待共享网页的URL修改为待共享网页的共享URL以生成第一页面响应,并向第一客户端返回该第一页面响应。
另一种方式中,用户背景信息包括:待共享网页对应的cookie、session和用户权限信息,该用户权限信息可以为用户名和密码等。第一客户端通过合并网页和第一客户端的用户背景信息获取第一待共享网页,具体为:第一客户端向反向代理服务器发送第一页面请求,第一页面请求中包括待共享网页的共享URL和用户权限信息,第一页面请求中还包含cookie,cookie中包含session的ID,以使反向代理服务器将待共享网页的共享URL修改为待共享网页的URL以生成第二页面请求,并向共享网站发送第二页面请求;然后,第一客户端接收第一页面响应,第一页面响应中包括第一待共享网页的内容,第一待共享网页的内容为共享网站根据用户权限信息和cookie、session共同确定的,第一页面响应是反向代理服务器根据共享网站针对第二页面请求返回的第二页面响应向第一客户端发送的,第一客户端获得第一待共享网页。
上述两种方式中,反向代理服务器主要用于在接收到第一客户端发送的第一页面请求时,将第一页面请求中的待共享页面的共享URL修改为待共享网页的URL,然后将待共享网页的URL携带在第二页面请求中发送给共享网站,对于共享网站来说,共享网站只能识别待共享网页的URL,因此,第一客户端要获取第一待共享网页的内容,必须通过反向代理服务器完成待共享网页的共享URL和待共享网页的URL的互相转换。
当然,用户背景信息中包含的cookie、session信息,是针对第一客户端对共享网页的浏览历史的背景信息。在第一客户端接收到共享URL,并获取了合并网页后,第一客户端要通过合并网页访问待共享网页时,因为待共享网页的共享URL是经反向代理服务器映射后的URL,与原第一客户端访问的待共享网站的URL不同,第一客户端和共享网站侧会认为这是一个新的访问,第一客户端发送待共享网页的共享URL给反向代理服务器,反向代理服务器转发给共享网站后,共享服务器会为本次网页访问建立session,并把session的ID发送给第一客户端,第一客户端会在本地记录访问待共享网页的cookie和session的ID等信息,作为用户背景信息。在后续通过待共享网页的共享URL访问待共享网页时,会在访问请求中携带cookie、session的ID,共享网站接收到访问请求后,根据其中携带的session的ID查找到本地的session信息,再结合其中的cookie,就可以返回包含用户背景信息的第一待共享网页。
第一客户端通过反向代理服务器访问待共享网站,可以采用由第一客户端发送包含待共享网页的共享URL的访问请求给反向代理服务器,由反向代理服务器将待共享页面的共享URL修改为待共享网页的URL,再发送给共享网站。也可以由反向代理服务器在接收到第一客户端通过通信网页发送的待共享网页的URL后,根据待共享网页的URL向共享网站发送页面请求,共享网站接收到页面请求后,向反向代理服务器返回页面响应,该页面响应包括该session和第一待共享网页的内容,反向代理服务器将该第一待共享网页的内容发送给第一客户端。
本发明的实施例中,第一客户端通过反向代理服务器从共享网站获取第一待共享网页。例如,京东商城网站通过cookie获取了用户在京东商城网站的浏览历史,会根据浏览历史给出商品推荐,把用户浏览历史相关的商品放在前面进行显示,即共享网站根据cookie和seesion生成了包含用户背景信息的待共享网页返回给客户端。因为一个网站不能获取用户在其它网站的浏览记录,如果一个网站中包含了其他网站的信息,例如,共享网站中还包含了“百度推广”或“Google推广”的广告,这个广告一般和用户浏览的共享网站无关,用到了其他网站的浏览历史,则共享网站返回的待共享网页中仅包含与共享网站相关的用户背景信息,第一客户端根据返回的待共享网页和以及本地cookie中其他网站相关的用户背景信息,获得包含所有网站相关的用户背景信息的待共享网页。
步骤104、第一客户端向第二客户端发送共享URL,以使第二客户端根据共享URL获取第二待共享网页,第二待共享网页不包含第一客户端的用户背景信息。
需说明的是,本发明实施例中第一待共享网页的共享URL与第二待共享网页的共享URL相同,均为待共享网页的共享URL,但是由于两者包含的用户背景信息不同,二者显示的页面不同。第一待共享网页包含第一客户端的用户背景信息,第二待共享网页不包含第一客户端的用户背景信息。
本步骤是为了实现第一客户端和第二客户端的URL同步,URL同步为下一步的DOM同步做准备的,DOM中一般包含对javascript、css、图片等资源文件的引用,资源文件的引用一般通过相对路径(相对于URL的路径)进行描述。第二客户端只有将自己的URL与第一客户端的URL同步,才能正确获取资源文件。资源文件与用户背景信息无关,获取资源文件一般不需要用户背景信息,因此,第一客户端和第二客户端可以各自根据共享URL从共享网站下载资源文件,本发明实施例中第二客户端作为共享接收方。
本实施例中,第一客户端通过向第二客户端发送该共享URL,以保持第一客户端和第二客户端的URL同步,第二客户端接收到该共享URL后,使用该共享URL通过反向代理服务器从待共享网站处下载资源文件获得第二待共享网页。由于资源文件与用户背景信息无关,且第二客户端的背景信息和第一客户端的用户背景信息不同,因此,第二客户端获得的第二待共享网页的内容不包含第一客户端的用户背景信息。URL同步只能同步第一客户端和第二客户端之间不包含用户背景信息的页面。由于第一客户端和第二客户端的用户背景信息不同,因此,在URL同步之后,第一客户端和第二客户端显示的待共享网页的内容可能不同。
步骤105、第一客户端向第二客户端发送第一客户端的DOM,第一客户端的DOM与第一待共享网页对应,以使第二客户端根据第一客户端的DOM修改第二客户端的DOM,并将修改后的第二客户端的DOM***第二待共享网页生成第一待共享网页。
客户端上运行的浏览器展现的用户界面的内容主要与以下内容有关:超文本标记语言(HyperText Markup language,简称HTML)解析后得到的DOM,javascript文件、CSS文件、图片等资源文件。其中,DOM可被javascript修改,而CSS文件、图片等资源文件不能被javascript修改。DOM是页面展现中的“主要内容”,资源文件需被DOM引用,才会被浏览器加载和显示在页面中,因此,要实现通信双方的内容共享必须实现DOM同步。
一种方式中,第一客户端可以将自己的全部DOM发送给第二客户端,第一客户端的DOM与第一客户端获取的第一待共享网页对应,第二客户端在接收到第一客户端的DOM后,直接将自己的DOM替换为第一客户端的DOM,实现与第一客户端的DOM同步。
另一种方式中,第一客户端可以只将与第一客户端的用户背景信息有关的部分DOM发送给第二客户端,第二客户端接收到与第一客户端的用户背景信息有关的部分DOM后修改自己的DOM,以使第二客户端的DOM与第一客户端的DOM同步。第二客户端在修改自己的DOM的过程中,可能将DOM中描述对资源文件的引用的相对路径修改了,因此,在双方DOM同步后,第二客户端根据自己的DOM和从共享网站处下载资源文件以生成第一待共享网页。
本实施例的方法,第一客户端通过通信网页向反向代理服务器发送待共享网页的URL,以使反向代理服务器将待共享网页的URL和通信网页的URL映射为共享URL,然后,第一客户端获取该共享URL,根据该共享URL获取包含第一客户端的用户背景信息的第一待共享网页,并将该共享URL发送给第二客户端,实现第一客户端和第二客户端的URL同步,在第一客户端和第二客户端URL同步之后,第一客户端将自己的DOM发送给第二客户端,以使第二客户端根据第一客户端的DOM修改自己的DOM,保持第一客户端和第二客户端的DOM同步,在第一客户端和第二客户端DOM同步后,两个用户之间的信息实现了同步。本实施了的方法,即使通信双方用户背景信息不同,也能够实现通信双方的信息同步。
在上述实施例一的基础上,第一客户端在向第二客户端发送第一客户端的全部或部分DOM之前,第一客户端根据用户的设置隐藏用户需要保密的信息,例如用户A需要隐藏登录时的用户名和密码,则第一客户端在向第二客户端发送DOM时将该用户名和密码隐藏,这样用户B将无法看到用户A的用户名和密码。
实施例一的方法解决了JavaScrip的跨域问题、URL的同步问题以及DOM的获取和同步问题。在共享发起方和共享接收方实现信息同步之后,若DOM发生变化、以及用户操作使共享网页发生变化时,通信双方也不能实现信息同步,上述由于DOM发生变化、以及用户操作使共享网页发生变化导致通信双方不同步也称为事件同步,事件包括DOM事件和UI事件。对于事件同步问题可以通过以下方式解决:
(1)DOM事件:javascript可以修改DOM,从而使网页的页面产生动态变化,由于用户背景信息需要保密,导致无法完全同步javascript context,因此,无法自动同步javascript产生的动态效果。所以第一客户端需要动态监测DOM,在第一客户端确定第一客户端的DOM发生变化时,将第一客户端的DOM的变化信息发送给第二客户端,以使第二客户端根据变化信息修改第二客户端的DOM,保持与第一客户端的DOM同步。
第一客户端可以通过以下两种方式监测DOM事件:第一种监听方式,第一客户端通过接口监听DOM事件,在DOM事件发生时调用回调函数,在回调函数函数中将DOM的变化信息发送给第二客户端,这种方式中,只要DOM元素发生改变,浏览器会自动执行该回调函数。第二种监听方式,第一客户端周期性的把自己的DOM的当前内容与上一次内容进行比较,确定第一客户端的DOM是否发生了变化,如果第一客户端的DOM发生了变化,则将变化信息发送给第二客户端。第二客户端接收到第一客户端的DOM的变化信息时,根据变化信息修改自己的DOM,以使第二客户端的DOM和第一客户端的DOM保持同步。
UI事件:UI事件的作用主要有两点,一是触发javascript事件,从而使网页页面发生变化,这种事件可归为DOM事件,通过DOM事件的处理方式处理;二是滚屏、鼠标焦点移动、键盘输入等用于辅助阅读和输入导致第一客户端的DOM发生变化,这种事件需要额外的机制进行同步。在第一客户端检测到用户通过输入设备输入的输入信息时,将该输入信息发送给第二客户端,以使第二客户端根据该输入信息保持与第一客户端的DOM同步。这里输入设备指鼠标、键盘等外部输入设备,输入信息具体为鼠标的位置、键盘的输入焦点及输入内容等。
图3为本发明信息共享方法实施例二的流程图,如图3所示,本实施例的方法可以包括以下步骤:
步骤201、第二客户端接收第一客户端发送的共享URL,该共享URL是反向代理服务器根据第一客户端通过通信网页发送的待共享网页的URL和通信网页的URL映射得到的。
反向代理服务器通过将通信网页所在的通信网站的和待共享网页所在的共享网站映射到同一个虚拟网站,解决了JavaScript的跨域问题,反向代理服务器将该共享URL发送给第一客户端,该共享URL中包含待共享网页的共享URL和通信网页的共享URL,第一客户端通过该共享URL能够访问待共享网页的内容。第一客户端获取到该共享URL后,将该共享URL发送给第二客户端,以使第一客户端和第二客户端的URL同步。
步骤202、第二客户端根据共享URL获取第二待共享网页,第二待共享网页不包含第一客户端的用户背景信息。
第二客户端接收到该共享URL后,根据该共享URL通过反向代理服务器获取第二待共享网页,具体地:第二客户端向反向代理服务器发送第一页面请求,第一页面请求中包括待共享网页的共享URL,以使反向代理服务器将待共享网页的共享URL修改为待共享网页的URL以生成第二页面请求,并向共享网站发送该第二页面请求,第二页面请求中包括待共享网页的URL。共享网站根据第二页面请求向反向代理服务器返回第二页面响应,该第二页面响应中包括第二待共享网页的内容,反向代理服务器接收到第二页面响应后,将第二页面响应中的待共享网页的URL修改为待共享网页的共享URL,并向第二客户端返回第一页面响应。
第二客户端接收第一页面响应,第一页面响应中包括第二待共享网页的内容,由于第一客户端和第二客户端的用户背景信息不同,因此,在URL同步之后,第一客户端和第二客户端显示的待共享网页的内容不同,第一客户端显示给用户的是第一待共享网页,第一待共享网页包含第一客户端的用户背景信息,第二客户端显示给用户的是第二待共享网页,第二待共享网页不包含第一客户端的用户背景信息。
步骤203、第二客户端接收第一客户端发送的第一客户端的DOM。
在第一客户端获取第一待共享网页后,第一客户端将自己的DOM发送给第二客户端,第一客户端的DOM与第一待共享网页对应。
步骤204、第二客户端根据第一客户端的DOM修改第二客户端的DOM,并根据修改后的第二客户端的DOM和第二待共享网页生成第一待共享网页。
第二客户端通过修改自己的DOM,使自己的DOM与第一客户端的DOM同步,在双方DOM同步后,第一客户端和第二客户端完成了信息的同步,双方可以看到相同的页面。第二客户端在修改自己的DOM时,会修改DOM中资源文件的引用,因此,在DOM修改完之后,第二客户端还需要根据资源文件的引用关系,重新从共享网站处下载资源文件,此时下载的资源文件与获取第二待共享网页时下载的资源文件可能不同。在第二客户端获取到DOM、资源文件之后,浏览器根据第二客户端的DOM和资源文件生成包含第一客户端的用户背景信息的第一待共享网页。
本实施例,第二客户端通过接收第一客户端发送的共享URL,根据该共享URL获取到第二待共享网页,完成双方URL同步,第二待共享网页为不包含第一客户端用户背景信息的待共享网页,在双方URL同步之后,第二客户端接收第一客户端发送的第一客户端的DOM,该第一客户端的DOM与第一待共享网页对应,第一待共享网页包含第一客户端的用户背景信息,第二客户端根据第一客户端的DOM修改自己的DOM,与第一客户端的DOM同步,在通信双方DOM同步之后,通信双方实现了信息共享。
在第二客户端完成与第一客户端的信息同步之后,当第一客户端确定自己的DOM发生变化时,第一客户端向第二客户端发送DOM的变化信息,第二客户端接收第一客户端发送的第一客户端的DOM的变化信息,根据变化信息修改自己的DOM,保持与第一客户端的DOM同步。
在第二客户端完成与第一客户端的信息同步之后,当用户通过输入设备输入的输入信息时,也会导致第一客户端的DOM发生变化,双方信息不同步,因此,当第一客户端在检测到用户通过输入设备输入的输入信息时向第二客户端发送该输入信息,第二客户端接收到该输入信息后,根据该输入信息修改自己的DOM,保持与第一客户端的DOM同步。
图4为本发明信息共享方法实施例三的流程图,如图4所示,本实施例的方法可以包括以下步骤:
步骤301、反向代理服务器接收客户端通过通信网页发送的待共享网页的URL。
步骤302、反向代理服务器将待共享网页的URL和通信网页的URL映射为共享URL,该共享URL中包含待共享网页的共享URL和通信网页的共享URL。
步骤303、反向代理服务器将共享URL发送给客户端,以使客户端根据共享URL获取待共享网页,该待共享网页包含客户端的用户背景信息。
反向代理服务器的作用是将通信网页和待共享网页映射到同一个虚拟网站,以解决Javascript的跨域问题,为了实现该功能,可以在现有的反向代理服务器的同个机器上设置一个tomcat等web服务器来实现,该web服务器包含servlet或其他可以读写***文件的底层语言(如java)编写的web服务,该Web服务提供页面,用于接收客户端发送的待共享网页的URL,该Web服务接收到待共享网页的URL后,由底层语言操作反向代理服务器的配置,把待共享网页的URL映射到反向代理服务器上的一个子URL,该Web服务引导客户端浏览器(或浏览器中的iframe)跳转到反向代理服务器中的子URL,这里的子URL为共享URL中的待共享网页的共享URL或通信网页的共享URL。
一种实现方式中,客户端的用户背景信息包括:待共享网页对应的cookie和session,在客户端根据共享URL获取待共享网页时,反向代理服务器还用于执行以下操作:反向代理服务器接收客户端发送的请求,该请求中包含cookie,cookie中包含session的标识ID,反向代理服务器根据该请求从共享网站获取待共享网页,并将待共享网页发送给客户端。
具体地,反向代理服务器接收客户端发送的请求,包括:反向代理服务器接收客户端发送的第一页面请求,第一页面请求中包括待共享网页的共享URL和cookie,cookie中包含session的ID。反向代理服务器根据请求从共享网站获取待共享网页,并将待共享网页发送给客户端,包括:反向代理服务器将第一页面请求中的待共享网页的共享URL修改为待共享网页的URL以生成第二页面请求,并将第二页面请求发送给共享网站;反向代理服务器接收共享网站发送的第二页面响应,第二页面响应中包括待共享网页的URL和待共享网页的内容,该待共享网页的内容是共享网站根据用户背景信息确定的;反向代理服务器将第二页面响应中的待共享网页的URL修改为待共享网页的共享URL以生成第一页面响应,并将第一页面响应发送给客户端,第一页面响应中包括待共享网页的内容。客户端接收到第一页面响应后,根据待共享网页的内容生成待共享网页,待共享网页包含该客户端的用户背景信息。
可选地,反向代理服务器还可以在接收到客户端通过通信网页发送的待共享网页的URL后,根据待共享网页的URL向共享网站发送页面请求,共享网站接收到页面请求后,向反向代理服务器返回页面响应,该页面响应包括待共享网页的内容,反向代理服务器将该待共享网页的内容发送给第一客户端。
另一种实现方式中,用户背景信息包括:待共享网页对应的cookie、session和用户权限信息,在客户端根据共享URL获取第一待共享网页时,反向代理服务器还用于执行以下操作:反向代理服务器接收客户端发送的第一页面请求,第一页面请求中包括待共享网页的共享URL、cookie和用户权限信息,cookie中包含session的标识ID;反向代理服务器将第一页面请求中的待共享网页的共享URL修改为待共享网页的URL以生成第二页面请求,并将第二页面请求发送给共享网站;反向代理服务器接收共享网站发送的第二页面响应,第二页面响应中包括待共享网页的URL和待共享网页的内容,待共享网页的内容为共享网站根据用户背景信息确定的;反向代理服务器将第二页面响应中的待共享网页的URL修改为待共享网页的共享URL以生成第一页面响应,并将第一页面响应发送给第一客户端,第一页面响应包括待共享网页的内容。
在客户端获取待共享网页时,反向代理服务器还用于执行以下操作:反向代理服务器在待共享网页通过时,将通信网页以插件的方式***待共享网页生成合并网页,合并网页中显示有通信网页和待共享网页,合并网页的URL为共享URL;反向代理服务器并将合并网页发送给客户端,以使客户端根据合并网页获取待共享网页。
图5为发明信息共享方法实施例四的信令流程图,如图5所示,本实施例的方法可以包括以下步骤:
步骤401、第一客户端向通信网站发送待共享网页的URL。
步骤402、通信网站向反向代理服务器转发待共享网页的URL。
步骤403、反向代理服务器将待共享网页的URL和通信网页的URL映射为共享URL。
步骤404、反向代理服务器向通信网站发送共享URL。
步骤405、通信网站向第一客户端转发共享URL。
步骤406、第一客户端根据共享URL,将待共享网页嵌入到通信网页生成合并网页。
步骤407、第一客户端向反向代理服务器发送第一页面请求,该第一页面请求中包括:待共享网页的共享URL、cookie和用户权限信息,cookie中包含session的ID。
当该用户权限信息包为用户名和密码时,用户需要先通过合并网页打开待共享网页,在待共享网页中输入用户名和密码登录共享网站后,获取第一待共享网页。
步骤408、反向代理服务器根据第一页面请求生成第二页面请求,并向共享网站发送第二页面请求。
具体地,反向代理服务器将待共享网页的共享URL修改为待共享网页的URL以生成该第二页面请求。
步骤409、共享网站根据第二页面请求向反向代理服务器返回第二页面响应。
具体地,共享网站根据第二页面请求中的用户背景信息确定第一待共享网页的内容,将第一待共享网页的内容携带在第二页面响应中。
步骤、410、反向代理服务器根据第二页面响应向第一客户端返回第一页面响应,该第一页面响应中包括第一待共享网页的内容。
第一客户端接收第一页面响应,根据第一待共享网页的内容生成第一待共享网页。
步骤411、第一客户端向第二客户端发送共享URL。
步骤412、第二客户端向反向代理服务器发送第三页面请求,该第三页面请求中包括待共享网页的共享URL。
步骤413、反向代理服务器根据第三页面请求生成第四页面请求,并向共享网站发送第四页面请求。
具体地,反向代理服务器将该第三页面请求中的待共享网页的共享URL修改为待共享网页的URL。
步骤414、共享网站根据第四页面请求向反向代理服务器返回第四页面响应。
该第四页面响应中包括第二待共享网页的内容,该第二待共享网页的内容不包括第一客户端的用户背景信息。
步骤415、反向代理服务器根据第四页面响应向第二客户端返回第三页面响应,该第三页面响应中包括第二待共享网页的内容。
第二客户端接收第三页面响应,根据第二待共享网页的内容生成第二待共享网页。
步骤416、第一客户端向第二客户端发送第一客户端的DOM。
第一客户端可以将自己全部DOM发送给第二客户端,也可以只将与第一客户端的用户背景信息有关的DOM发送给第二客户端。
可选地,第一客户端将自己的DOM发送给第二客户端之前,还可以根据设置隐藏需要保密的信息。
步骤417、第二客户端根据第一客户端的DOM修改自己的DOM。
步骤418、第一客户端监测自己的DOM。
步骤419、若第一客户端监测到自己的DOM发生变化,向第二客户端发送第一客户端的DOM的变化信息。
步骤420、第二客户端根据第一客户端的DOM的变化信息修改自己的DOM。
图6为本发明实施例提供的一种第一客户端的结构示意图,如图6所示,本实施例的第一客户端可以包括:发送模块11、接收模块12和获取模块13。
其中,发送模块11,用于通过通信网页向反向代理服务器发送待共享网页的统一资源定位符URL,以使所述反向代理服务器将所述待共享网页的URL和所述通信网页的URL映射为共享URL,所述共享URL中包含所述待共享网页的共享URL和所述通信网页的共享URL;
接收模块12,用于接收所述反向代理服务器发送的所述共享URL;
获取模块13,用于根据所述共享URL获取第一待共享网页,所述第一待共享网页包含所述第一客户端的用户背景信息;
所述发送模块11,还用于向第二客户端发送所述共享URL,以使所述第二客户端根据所述共享URL获取第二待共享网页,所述第二待共享网页不包含所述第一客户端的用户背景信息;
所述发送模块11,还用于向所述第二客户端发送所述第一客户端的文件对象模型DOM,所述第一客户端的DOM与所述第一待共享网页对应,以使所述第二客户端根据所述第一客户端的DOM修改所述第二客户端的DOM,并根据修改后的所述第二客户端的DOM和所述第二待共享网页生成所述第一待共享网页。
本实施例的装置,可以用于执行图1和图5所示方法实施例的技术方案,其实现原理和技术效果类似,此处不再赘述。
图7为本发明实施例提供的另一种第一客户端的结构示意图,本实施例的第一客户端在图6所示的第一客户端的基础上,获取模块13具体包括:合并网页获取单元131和待共享网页获取单元132。合并网页获取单元131,用于根据所述共享URL获取合并网页,所述合并网页中显示有所述通信网页和所述待共享网页,所述合并网页的URL为所述共享URL;待共享网页获取单元132,用于通过所述合并网页和所述第一客户端的用户背景信息获取所述第一待共享网页。
所述合并网页获取单元131具体用于:根据所述共享URL中的所述通信网页的共享URL和所述待共享网页的共享URL,将所述待共享网页嵌入到所述通信网页中形成所述合并网页;或者,通过所述共享URL接收所述反向代理服务器发送的所述合并网页,所述合并网页是所述反向代理服务器将所述通信网页以插件的方式***所述待共享网页生成的。
一种实现方式中,所述用户背景信息包括:所述待共享网页对应的cookie和session,则所述待共享网页获取单元132具体用于:通过所述合并网页,向所述反向代理服务器发送请求以获取所述第一待共享网页,所述请求中包含所述cookie,所述cookie中包含所述session的标识ID;从所述反向代理服务器接收所述第一待共享网页,所述第一待共享网页是所述反向代理服务器根据所述请求从共享网站获取的。
其中,待共享网页获取单元132在向所述反向代理服务器发送请求以获取所述第一待共享网页时,具体用于:向所述反向代理服务器发送第一页面请求,所述第一页面请求中包括所述待共享网页的共享URL、所述cookie,所述cookie中包含所述session的ID,以使所述反向代理服务器将所述待共享网页的共享URL修改为所述待共享网页的URL以生成第二页面请求,并向所述共享网站发送所述第二页面请求。待共享网页获取单元132从所述反向代理服务器接收所述第一待共享网页时,具体用于:接收第一页面响应,所述第一页面响应中包括所述第一待共享网页的内容,所述第一页面响应是所述反向代理服务器根据所述共享网站针对所述第二页面请求返回的第二页面响应向所述第一客户端发送的。
另一种实现方式中,所述用户背景信息包括:所述待共享网页对应的cookie、session和用户权限信息,则所述待共享网页获取单元132具体用于:向所述反向代理服务器发送第一页面请求,所述第一页面请求中包括所述待共享网页的共享URL、所述cookie和所述用户权限信息,所述cookie中包含所述session的标识ID,以使所述反向代理服务器将所述待共享网页的共享URL修改为所述待共享网页的URL以生成第二页面请求,并向共享网站发送所述第二页面请求;接收第一页面响应,所述第一页面响应中包括所述第一待共享网页的内容,所述第一待共享网页的内容为所述共享网站根据所述用户背景信息确定的,所述第一页面响应是所述反向代理服务器根据所述共享网站针对所述第二页面请求返回的第二页面响应向所述第一客户端发送的。
可选地,第一客户端还包括:隐藏模块14,用于在所述发送模块11向所述第二客户端发送所述第一客户端的DOM之前,根据设置隐藏需要保密的信息。
进一步,本实施例中,第一客户端还包括:检测模块15,用于确定所述第一客户端的DOM是否发生变化;相应地,所述发送模块11还用于,若所述监测模块15确定所述第一客户端的DOM发生变化,将所述第一客户端的DOM的变化信息发送给所述第二客户端,以使所述第二客户端根据所述变化信息修改所述第二客户端的DOM。
检测模块15,还用于检测输入设备输入的输入信息;相应地,所述发送模块11还用于,在所述检测模块15检测到输入设备输入的输入信息时,将所述输入信息发送给所述第二客户端,以使所述第二客户端根据所述输入信息修改所述第二客户端的DOM。
本实施例的装置,可以用于执行图1和图2所示方法实施例的技术方案,其实现原理和技术效果类似,此处不再赘述。
图8为本发明实施例提供的一种第二客户端的结构示意图,如图8所示,本实施例提供的第二客户端包括:接收模块21、获取模块22和修改模块23。
其中,接收模块21,用于接收第一客户端发送的共享统一资源定位符URL,所述共享URL是反向代理服务器根据所述第一客户端通过通信网页发送的待共享网页的URL和通信网页的URL映射得到的,所述共享URL中包含所述待共享网页的共享URL和所述通信网页的共享URL;
获取模块22,用于根据所述共享URL获取第二待共享网页,所述第二待共享网页不包含所述第一客户端的用户背景信息;
接收模块21,还用于接收所述第一客户端发送的所述第一客户端的文件对象模型DOM,所述第一客户端的DOM与第一待共享网页对应,所述第一待共享网页包含所述第一客户端的用户背景信息;
修改模块23,用于根据所述第一客户端的DOM修改所述第二客户端的DOM,并根据修改后的所述第二客户端的DOM和所述第二待共享网页生成所述第一待共享网页。
所述获取模块22具体用于:向所述反向代理服务器发送第一页面请求,所述第一页面请求中包括所述待共享网页的共享URL,以使所述反向代理服务器将所述待共享网页的共享URL修改为所述待共享网页的URL以生成第二页面请求,并向共享网站发送所述第二页面请求;接收第一页面响应,所述第一页面响应中包括所述第二待共享网页的内容,所述第一页面响应是所述反向代理服务器根据所述共享网站针对所述第二页面请求返回的第二页面响应向所述第二客户端发送的。
当第一客户端的DOM发生变化时,所述接收模块21,还用于接收所述第一客户端发送的所述第一客户端的DOM的变化信息,所述变化信息是所述第一客户端在检测到所述第一客户端的DOM发生变化时向所述第二客户端发送的;相应地,所述修改模块23,还用于根据所述变化信息修改所述第二客户端的DOM。或者,所述接收模块21,接收所述第一客户端发送的输入信息,所述输入信息是所述第一客户端在检测到所述用户通过输入设备输入所述输入信息时向所述第二客户端发送的;所述修改模块23,还用于根据所述输入信息修改所述第二客户端的DOM。
本实施例的第二客户端,可以用于执行图3和图5所示方法实施例的技术方案,其实现原理和技术效果类似,此处不再赘述。
图9为本发明实施例提供的一种反向代理服务器的结构示意图,如图9所示,本实施例的反向代理服务器包括:接收模块31、映射模块32和发送模块33。
其中,接收模块31,用于接收客户端通过通信网页发送的待共享网页的统一资源定位符URL;
映射模块32,用于将所述待共享网页的URL和所述通信网页的URL映射为共享URL,所述共享URL中包含所述待共享网页的共享URL和所述通信网页的共享URL;
发送模块33,用于将所述共享URL发送给所述客户端,以使所述客户端根据所述共享URL获取待共享网页,所述待共享网页包含所述客户端的用户背景信息。
一种实现方式中,所述用户背景信息包括:所述待共享网页对应的cookie和session,所述反向代理服务器还包括:获取模块34;所述接收模块31,还用于接收所述客户端发送的请求,所述请求中包含所述cookie,所述cookie中包含所述session的标识ID;所述获取模块34,用于根据所述请求从共享网站获取所述待共享网页,并将所述待共享网页发送给所述客户端。
所述接收模块31具体用于:接收所述客户端发送的第一页面请求,所述第一页面请求中包括所述待共享网页的共享URL、所述cookie,所述cookie中包含所述session的ID;所述获取模块34具体用于:将所述第一页面请求中的所述待共享网页的共享URL修改为所述待共享网页的URL以生成第二页面请求,并将所述第二页面请求发送给共享网站;接收所述共享网站发送的第二页面响应,所述第二页面响应中包括所述待共享网页的URL以及所述待共享网页的内容;将所述第二页面响应中的所述待共享网页的URL修改为所述待共享网页的共享URL以生成第一页面响应,并将所述第一页面响应发送给所述客户端,所述第一页面响应中包括所述待共享网页的内容。
另一种实现方式中,所述用户背景信息包括:所述待共享网页对应的cookie、session和用户权限信息,所述反向代理服务器还包括:获取模块34。所述接收模块31,还用于接收所述客户端发送的第一页面请求,所述第一页面请求中包括所述待共享网页的共享URL、所述cookie和所述用户权限信息,所述cookie中包含所述session的标识ID。所述获取模块34,用于将所述第一页面请求中的所述待共享网页的共享URL修改为所述待共享网页的URL以生成第二页面请求,并将所述第二页面请求发送给共享网站。所述接收模块31,还用于接收所述共享网站发送的第二页面响应,所述第二页面响应中包括所述待共享网页的URL和所述待共享网页的内容,所述待共享网页的内容为所述共享网站根据所述用户背景信息确定的。所述获取模块,还用于将所述第二页面响应中的所述待共享网页的URL修改为所述待共享网页的共享URL以生成第一页面响应,所述第一页面响应中包括所述待共享网页的内容;所述发送模块33,还用于将所述第一页面响应发送给所述客户端。
本实施例的反向代理服务器,可以用于执行图4和图5所示方法实施例的技术方案,其实现原理和技术效果类似,此处不再赘述。
图10为本发明实施例提供的又一种第一客户端的结构示意图,如图10所示,本实施例提供的第一客户端400包括:处理器41、存储器42和***总线43。所述处理器41和所述存储器42之间通过所述***总线43连接并完成相互间的通信;所述存储器42,用于存储计算机执行指令421;所述处理器41,用于运行所述计算机执行指令421,执行如下所述的操作:
通过通信网页向反向代理服务器发送待共享网页的统一资源定位符URL,以使所述反向代理服务器将所述待共享网页的URL和所述通信网页的URL映射为共享URL,所述共享URL中包含所述待共享网页的共享URL和所述通信网页的共享URL;接收所述反向代理服务器发送的所述共享URL;根据所述共享URL获取第一待共享网页,所述第一待共享网页包含所述第一客户端的用户背景信息;向第二客户端发送所述共享URL,以使所述第二客户端根据所述共享URL获取第二待共享网页,所述第二待共享网页不包含所述第一客户端的用户背景信息;向所述第二客户端发送所述第一客户端的文件对象模型DOM,所述第一客户端的DOM与所述第一待共享网页对应,以使所述第二客户端根据所述第一客户端的DOM修改所述第二客户端的DOM,并根据修改后的所述第二客户端的DOM和所述第二待共享网页生成所述第一待共享网页。
处理器41根据所述共享URL获取第一待共享网页,具体为:根据所述共享URL获取合并网页,所述合并网页中显示有所述通信网页和所述待共享网页,所述合并网页的URL为所述共享URL;通过所述合并网页和所述第一客户端的用户背景信息获取所述第一待共享网页。
处理器41第一客户端根据所述共享URL获取合并网页,具体为:根据所述共享URL中的所述通信网页的共享URL和所述待共享网页的共享URL,将所述待共享网页嵌入到所述通信网页中形成所述合并网页;或者,通过所述共享URL接收所述反向代理服务器发送的所述合并网页,所述合并网页是所述反向代理服务器将所述通信网页以插件的方式***所述待共享网页生成的。
一种实现方式中,所述用户背景信息包括:所述待共享网页对应的cookie和session;则处理器41通过所述合并网页和所述第一客户端的用户背景信息获取所述第一待共享网页,具体为:通过所述合并网页,向所述反向代理服务器发送请求以获取所述第一待共享网页,所述请求中包含所述cookie,所述cookie中包含所述session的标识ID;从所述反向代理服务器接收所述第一待共享网页,所述第一待共享网页是所述反向代理服务器根据所述请求从共享网站获取的。
其中,处理器41通过所述合并网页,向所述反向代理服务器发送请求以获取所述第一待共享网页,具体为:向所述反向代理服务器发送第一页面请求,所述第一页面请求中包括所述待共享网页的共享URL、所述cookie,所述cookie中包含所述session的ID,以使所述反向代理服务器将所述待共享网页的共享URL修改为所述待共享网页的URL以生成第二页面请求,并向所述共享网站发送所述第二页面请求;
处理器41从所述反向代理服务器接收所述第一待共享网页,具体为:接收第一页面响应,所述第一页面响应中包括所述第一待共享网页的内容,所述第一页面响应是所述反向代理服务器根据所述共享网站针对所述第二页面请求返回的第二页面响应向所述第一客户端发送的。
另一种实现方式中,所述用户背景信息包括:所述待共享网页对应的cookie、session和用户权限信息;则处理器41通过所述合并网页和所述第一客户端的用户背景信息获取所述第一待共享网页,具体为:向所述反向代理服务器发送第一页面请求,所述第一页面请求中包括所述待共享网页的共享URL、所述cookie和所述用户权限信息,所述cookie中包含所述session的标识ID,以使所述反向代理服务器将所述待共享网页的共享URL修改为所述待共享网页的URL以生成第二页面请求,并向共享网站发送所述第二页面请求;然后,接收第一页面响应,所述第一页面响应中包括所述第一待共享网页的内容,所述第一待共享网页的内容为所述共享网站根据所述用户背景信息确定的,所述第一页面响应是所述反向代理服务器根据所述共享网站针对所述第二页面请求返回的第二页面响应向所述第一客户端发送的。
在处理器41向所述第二客户端发送所述第一客户端的DOM之前,处理器41还用于:根据设置隐藏需要保密的信息。
处理器41还用于检测第一客户端的DOM是否发生变化,若确定所述第一客户端的DOM发生变化,处理器41将所述第一客户端的DOM的变化信息发送给所述第二客户端,以使所述第二客户端根据所述变化信息修改所述第二客户端的DOM。
处理器41还用于检测用户通过输入设备输入的输入信息,在检测到输入设备输入的输入信息时,将所述输入信息发送给所述第二客户端,以使所述第二客户端根据所述输入信息修改所述第二客户端的DOM。
本实施例的第一客户端,可以用于执行图1和图5所示方法实施例的技术方案,其实现原理和技术效果类似,此处不再赘述。
图11为本发明实施例提供的另一种第二客户端的结构示意图,如图11所示,本实施例提供的第二客户端500包括:处理器51、存储器52和***总线53。所述处理器51和所述存储器52之间通过所述***总线53连接并完成相互间的通信;所述存储器52,用于存储计算机执行指令521;所述处理器51,用于运行所述计算机执行指令521,执行如下所述的操作:
接收第一客户端发送的共享统一资源定位符URL,所述共享URL是反向代理服务器根据所述第一客户端通过通信网页发送的待共享网页的URL和通信网页的URL映射得到的,所述共享URL中包含所述待共享网页的共享URL和所述通信网页的共享URL;根据所述共享URL获取第二待共享网页,所述第二待共享网页不包含所述第一客户端的用户背景信息;接收所述第一客户端发送的所述第一客户端的文件对象模型DOM,所述第一客户端的DOM与第一待共享网页对应,所述第一待共享网页包含所述第一客户端的用户背景信息;根据所述第一客户端的DOM修改所述第二客户端的DOM,并根据修改后的所述第二客户端的DOM和所述第二待共享网页生成所述第一待共享网页。
处理器51根据所述共享URL获取第二待共享网页,具体为:向所述反向代理服务器发送第一页面请求,所述第一页面请求中包括所述待共享网页的共享URL,以使所述反向代理服务器将所述待共享网页的共享URL修改为所述待共享网页的URL以生成第二页面请求,并向共享网站发送所述第二页面请求;接收第一页面响应,所述第一页面响应中包括所述第二待共享网页的内容,所述第一页面响应是所述反向代理服务器根据所述共享网站针对所述第二页面请求返回的第二页面响应向所述第二客户端发送的。
处理器51还用于:接收所述第一客户端发送的所述第一客户端的DOM的变化信息,根据所述变化信息修改所述第二客户端的DOM,所述变化信息是所述第一客户端在检测到所述第一客户端的DOM发生变化时向所述第二客户端发送的。或者,接收所述第一客户端发送的输入信息,根据所述输入信息修改所述第二客户端的DOM,所述输入信息是所述第一客户端在检测到所述用户通过输入设备输入所述输入信息时向所述第二客户端发送的。
本实施例的第二客户端,可以用于执行图3和图5所示方法实施例的技术方案,其实现原理和技术效果类似,此处不再赘述。
图12为本发明实施例提供的另一种反向代理服务器的结构示意图,如图12所示,本实施例提供的反向代理服务器600包括:处理器61、存储器62和***总线63。所述处理器61和所述存储器62之间通过所述***总线63连接并完成相互间的通信;所述存储器62,用于存储计算机执行指令621;所述处理器61,用于运行所述计算机执行指令621,执行如下所述的操作:
接收客户端通过通信网页发送的待共享网页的统一资源定位符URL;将所述待共享网页的URL和所述通信网页的URL映射为共享URL,所述共享URL中包含所述待共享网页的共享URL和所述通信网页的共享URL;将所述共享URL发送给所述客户端,以使所述客户端根据所述共享URL获取待共享网页,所述待共享网页包含所述客户端的用户背景信息。
当用户背景信息包括:所述待共享网页对应的cookie和session,处理器61还用于:接收所述客户端发送的请求,所述请求中包含所述cookie,所述cookie中包含所述session的标识ID;根据所述请求从共享网站获取所述待共享网页,并将所述待共享网页发送给所述客户端。
处理器61接收所述客户端发送的请求,具体为:接收所述客户端发送的第一页面请求,所述第一页面请求中包括所述待共享网页的共享URL、所述cookie,所述cookie中包含所述session的ID。处理器61根据所述请求从共享网站获取所述待共享网页,并将所述待共享网页发送给所述客户端,具体为:将所述第一页面请求中的所述待共享网页的共享URL修改为所述待共享网页的URL以生成第二页面请求,并将所述第二页面请求发送给共享网站;接收所述共享网站发送的第二页面响应,所述第二页面响应中包括所述待共享网页的URL以及所述待共享网页的内容;将所述第二页面响应中的所述待共享网页的URL修改为所述待共享网页的共享URL以生成第一页面响应,并将所述第一页面响应发送给所述客户端,所述第一页面响应中包括所述待共享网页的内容。
当用户背景信息包括:所述待共享网页对应的cookie、session和用户权限信息时,处理器61还用于:接收所述客户端发送的第一页面请求,所述第一页面请求中包括所述待共享网页的共享URL、所述cookie和所述用户权限信息,所述cookie中包含所述session的标识ID;将所述第一页面请求中的所述待共享网页的共享URL修改为所述待共享网页的URL以生成第二页面请求,并将所述第二页面请求发送给共享网站;接收所述共享网站发送的第二页面响应,所述第二页面响应中包括所述待共享网页的URL和所述待共享网页的内容,所述待共享网页的内容为所述共享网站根据所述用户背景信息确定的;将所述第二页面响应中的所述待共享网页的URL修改为所述待共享网页的共享URL以生成第一页面响应,并将所述第一页面响应发送给所述客户端,所述第一页面响应中包括所述待共享网页的内容。
本实施例的反向代理服务器,可以用于执行图4和图5所示方法实施例的技术方案,其实现原理和技术效果类似,此处不再赘述。
本领域普通技术人员可以理解:实现上述方法实施例的全部或部分步骤可以通过程序指令相关的硬件来完成,前述的程序可以存储于一计算机可读取存储介质中,该程序在执行时,执行包括上述方法实施例的步骤;而前述的存储介质包括:ROM、RAM、磁碟或者光盘等各种可以存储程序代码的介质。
最后应说明的是:以上各实施例仅用以说明本发明的技术方案,而非对其限制;尽管参照前述各实施例对本发明进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分或者全部技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本发明各实施例技术方案的范围。
Claims (33)
1.一种信息共享方法,其特征在于,包括:
第一客户端通过通信网页向反向代理服务器发送待共享网页的统一资源定位符URL,以使所述反向代理服务器将所述待共享网页的URL和所述通信网页的URL映射为共享URL,所述共享URL中包含所述待共享网页的共享URL和所述通信网页的共享URL,所述通信网页为发起共享的网页;
所述第一客户端接收所述反向代理服务器发送的所述共享URL;
所述第一客户端根据所述共享URL获取第一待共享网页,所述第一待共享网页包含所述第一客户端的用户背景信息,所述用户背景信息包括待共享网页对应的cookie和session;所述第一待共享网页包含所述第一客户端的用户背景信息,包括:所述第一待共享网页是根据用户背景信息生成的;
所述第一客户端向第二客户端发送所述共享URL,以使所述第二客户端根据所述共享URL获取第二待共享网页,所述第二待共享网页不包含所述第一客户端的用户背景信息;
所述第一客户端向所述第二客户端发送所述第一客户端的文件对象模型DOM,所述第一客户端的DOM与所述第一待共享网页对应,以使所述第二客户端根据所述第一客户端的DOM修改所述第二客户端的DOM,并根据修改后的所述第二客户端的DOM和所述第二待共享网页生成所述第一待共享网页;
所述第一客户端根据所述共享URL获取第一待共享网页,包括:
所述第一客户端根据所述共享URL获取合并网页,所述合并网页中显示有所述通信网页和所述待共享网页,所述合并网页的URL为所述共享URL;
所述第一客户端通过所述合并网页和所述第一客户端的用户背景信息获取所述第一待共享网页。
2.根据权利要求1所述的方法,其特征在于,所述第一客户端根据所述共享URL获取合并网页,包括:
所述第一客户端根据所述共享URL中的所述通信网页的共享URL和所述待共享网页的共享URL,将所述待共享网页嵌入到所述通信网页中形成所述合并网页;或者,
所述第一客户端通过所述共享URL接收所述反向代理服务器发送的所述合并网页,所述合并网页是所述反向代理服务器将所述通信网页以插件的方式***所述待共享网页生成的。
3.根据权利要求1或2所述的方法,其特征在于,所述用户背景信息包括:所述待共享网页对应的cookie和session;
所述第一客户端通过所述合并网页和所述第一客户端的用户背景信息获取所述第一待共享网页,包括:
所述第一客户端通过所述合并网页,向所述反向代理服务器发送请求以获取所述第一待共享网页,所述请求中包含所述cookie,所述cookie中包含所述session的标识ID;
所述第一客户端从所述反向代理服务器接收所述第一待共享网页,所述第一待共享网页是所述反向代理服务器根据所述请求从共享网站获取的。
4.根据权利要求3所述的方法,其特征在于,所述第一客户端通过所述合并网页,向所述反向代理服务器发送请求以获取所述第一待共享网页,包括:
所述第一客户端向所述反向代理服务器发送第一页面请求,所述第一页面请求中包括所述待共享网页的共享URL、所述cookie,所述cookie中包含所述session的ID,以使所述反向代理服务器将所述待共享网页的共享URL修改为所述待共享网页的URL以生成第二页面请求,并向所述共享网站发送所述第二页面请求;
则所述第一客户端从所述反向代理服务器接收所述第一待共享网页,包括:所述第一客户端接收第一页面响应,所述第一页面响应中包括所述第一待共享网页的内容,所述第一页面响应是所述反向代理服务器根据所述共享网站针对所述第二页面请求返回的第二页面响应向所述第一客户端发送的。
5.根据权利要求1或2所述的方法,其特征在于,所述用户背景信息包括:所述待共享网页对应的cookie、session和用户权限信息;
所述第一客户端通过所述合并网页和所述第一客户端的用户背景信息获取所述第一待共享网页,包括:
所述第一客户端向所述反向代理服务器发送第一页面请求,所述第一页面请求中包括所述待共享网页的共享URL、所述cookie和所述用户权限信息,所述cookie中包含所述session的标识ID,以使所述反向代理服务器将所述待共享网页的共享URL修改为所述待共享网页的URL以生成第二页面请求,并向共享网站发送所述第二页面请求;
所述第一客户端接收第一页面响应,所述第一页面响应中包括所述第一待共享网页的内容,所述第一待共享网页的内容为所述共享网站根据所述用户背景信息确定的,所述第一页面响应是所述反向代理服务器根据所述共享网站针对所述第二页面请求返回的第二页面响应向所述第一客户端发送的。
6.根据权利要求1中任一项所述的方法,其特征在于,在所述第一客户端向所述第二客户端发送所述第一客户端的DOM之前,所述方法还包括:
所述第一客户端根据设置隐藏需要保密的信息。
7.根据权利要求1中任一项所述的方法,其特征在于,所述方法还包括:
若所述第一客户端确定所述第一客户端的DOM发生变化,所述第一客户端将所述第一客户端的DOM的变化信息发送给所述第二客户端,以使所述第二客户端根据所述变化信息修改所述第二客户端的DOM。
8.根据权利要求1中任一项所述的方法,其特征在于,所述方法还包括:
在所述第一客户端检测到输入设备输入的输入信息时,将所述输入信息发送给所述第二客户端,以使所述第二客户端根据所述输入信息修改所述第二客户端的DOM。
9.一种信息共享方法,其特征在于,包括:
第二客户端接收第一客户端发送的共享统一资源定位符URL,所述共享URL是反向代理服务器根据所述第一客户端通过通信网页发送的待共享网页的URL和通信网页的URL映射得到的,所述共享URL中包含所述待共享网页的共享URL和所述通信网页的共享URL,所述通信网页为发起共享的网页;
所述第二客户端根据所述共享URL获取第二待共享网页,所述第二待共享网页不包含所述第一客户端的用户背景信息,所述用户背景信息包括待共享网页对应的cookie和session;所述第二待共享网页不包含所述第一客户端的用户背景信息,包括:所述第二待共享网页不是根据用户背景信息生成的;
所述第二客户端接收所述第一客户端发送的所述第一客户端的文件对象模型DOM,所述第一客户端的DOM与第一待共享网页对应,所述第一待共享网页包含所述第一客户端的用户背景信息;
所述第二客户端根据所述第一客户端的DOM修改所述第二客户端的DOM,并根据修改后的所述第二客户端的DOM和所述第二待共享网页生成所述第一待共享网页;
所述第二客户端根据所述共享URL获取第二待共享网页,包括:
所述第二客户端向所述反向代理服务器发送第一页面请求,所述第一页面请求中包括所述待共享网页的共享URL,以使所述反向代理服务器将所述待共享网页的共享URL修改为所述待共享网页的URL以生成第二页面请求,并向共享网站发送所述第二页面请求;
所述第二客户端接收第一页面响应,所述第一页面响应中包括所述第二待共享网页的内容,所述第一页面响应是所述反向代理服务器根据所述共享网站针对所述第二页面请求返回的第二页面响应向所述第二客户端发送的。
10.根据权利要求9所述的方法,其特征在于,所述方法还包括:
所述第二客户端接收所述第一客户端发送的所述第一客户端的DOM的变化信息,根据所述变化信息修改所述第二客户端的DOM,所述变化信息是所述第一客户端在检测到所述第一客户端的DOM发生变化时向所述第二客户端发送的。
11.根据权利要求9所述的方法,其特征在于,所述方法还包括:
所述第二客户端接收所述第一客户端发送的输入信息,根据所述输入信息修改所述第二客户端的DOM,所述输入信息是所述第一客户端在检测到所述用户通过输入设备输入所述输入信息时向所述第二客户端发送的。
12.一种信息共享方法,其特征在于,包括:
反向代理服务器接收客户端通过通信网页发送的待共享网页的统一资源定位符URL,所述通信网页为发起共享的网页;
所述反向代理服务器将所述待共享网页的URL和所述通信网页的URL映射为共享URL,所述共享URL中包含所述待共享网页的共享URL和所述通信网页的共享URL;
所述反向代理服务器将所述共享URL发送给所述客户端,以使所述客户端根据所述共享URL获取待共享网页,所述待共享网页包含所述客户端的用户背景信息,所述用户背景信息包括待共享网页对应的cookie和session;所述待共享网页包含所述客户端的用户背景信息,包括:所述待共享网页是根据用户背景信息生成的;
以使客户端向第二客户端发送所述共享URL,以使所述第二客户端根据所述共享URL获取第二待共享网页,所述第二待共享网页不包含所述客户端的用户背景信息;以使客户端向所述第二客户端发送所述客户端的文件对象模型DOM,所述客户端的DOM与第一待共享网页对应,以使所述第二客户端根据所述客户端的DOM修改所述第二客户端的DOM,并根据修改后的所述第二客户端的DOM和所述第二待共享网页生成所述第一待共享网页;
所述反向代理服务器将所述共享URL发送给所述客户端,以使所述客户端根据所述共享URL获取合并网页,所述合并网页中显示有所述通信网页和所述待共享网页,所述合并网页的URL为所述共享URL;所述客户端通过所述合并网页和所述客户端的用户背景信息获取所述第一待共享网页。
13.根据权利要求12所述的方法,其特征在于,所述用户背景信息包括:所述待共享网页对应的cookie和session,所述方法还包括:
所述反向代理服务器接收所述客户端发送的请求,所述请求中包含所述cookie,所述cookie中包含所述session的标识ID;
所述反向代理服务器根据所述请求从共享网站获取所述待共享网页,并将所述待共享网页发送给所述客户端。
14.根据权利要求13所述的方法,其特征在于,所述反向代理服务器接收所述客户端发送的请求,包括:
所述反向代理服务器接收所述客户端发送的第一页面请求,所述第一页面请求中包括所述待共享网页的共享URL、所述cookie,所述cookie中包含所述session的ID;
所述反向代理服务器根据所述请求从共享网站获取所述待共享网页,并将所述待共享网页发送给所述客户端,包括:
所述反向代理服务器将所述第一页面请求中的所述待共享网页的共享URL修改为所述待共享网页的URL以生成第二页面请求,并将所述第二页面请求发送给共享网站;
所述反向代理服务器接收所述共享网站发送的第二页面响应,所述第二页面响应中包括所述待共享网页的URL以及所述待共享网页的内容;
所述反向代理服务器将所述第二页面响应中的所述待共享网页的URL修改为所述待共享网页的共享URL以生成第一页面响应,并将所述第一页面响应发送给所述客户端,所述第一页面响应中包括所述待共享网页的内容。
15.根据权利要求12所述的方法,其特征在于,所述用户背景信息包括:所述待共享网页对应的cookie、session和用户权限信息,所述方法还包括:
所述反向代理服务器接收所述客户端发送的第一页面请求,所述第一页面请求中包括所述待共享网页的共享URL、所述cookie和所述用户权限信息,所述cookie中包含所述session的标识ID;
所述反向代理服务器将所述第一页面请求中的所述待共享网页的共享URL修改为所述待共享网页的URL以生成第二页面请求,并将所述第二页面请求发送给共享网站;
所述反向代理服务器接收所述共享网站发送的第二页面响应,所述第二页面响应中包括所述待共享网页的URL和所述待共享网页的内容,所述待共享网页的内容为所述共享网站根据所述用户背景信息确定的;
所述反向代理服务器将所述第二页面响应中的所述待共享网页的URL修改为所述待共享网页的共享URL以生成第一页面响应,并将所述第一页面响应发送给所述客户端,所述第一页面响应中包括所述待共享网页的内容。
16.一种第一客户端,其特征在于,包括:
发送模块,用于通过通信网页向反向代理服务器发送待共享网页的统一资源定位符URL,以使所述反向代理服务器将所述待共享网页的URL和所述通信网页的URL映射为共享URL,所述共享URL中包含所述待共享网页的共享URL和所述通信网页的共享URL,所述通信网页为发起共享的网页;
接收模块,用于接收所述反向代理服务器发送的所述共享URL;
获取模块,用于根据所述共享URL获取第一待共享网页,所述第一待共享网页包含所述第一客户端的用户背景信息,所述用户背景信息包括待共享网页对应的cookie和session;所述第一待共享网页包含所述第一客户端的用户背景信息,包括:所述第一待共享网页是根据用户背景信息生成的;
所述发送模块,还用于向第二客户端发送所述共享URL,以使所述第二客户端根据所述共享URL获取第二待共享网页,所述第二待共享网页不包含所述第一客户端的用户背景信息;
所述发送模块,还用于向所述第二客户端发送所述第一客户端的文件对象模型DOM,所述第一客户端的DOM与所述第一待共享网页对应,以使所述第二客户端根据所述第一客户端的DOM修改所述第二客户端的DOM,并根据修改后的所述第二客户端的DOM和所述第二待共享网页生成所述第一待共享网页;
所述获取模块包括:
合并网页获取单元,用于根据所述共享URL获取合并网页,所述合并网页中显示有所述通信网页和所述待共享网页,所述合并网页的URL为所述共享URL;
待共享网页获取单元,用于通过所述合并网页和所述第一客户端的用户背景信息获取所述第一待共享网页。
17.根据权利要求16所述的客户端,其特征在于,所述合并网页获取单元具体用于:
根据所述共享URL中的所述通信网页的共享URL和所述待共享网页的共享URL,将所述待共享网页嵌入到所述通信网页中形成所述合并网页;或者,
通过所述共享URL接收所述反向代理服务器发送的所述合并网页,所述合并网页是所述反向代理服务器将所述通信网页以插件的方式***所述待共享网页生成的。
18.根据权利要求16或17所述的客户端,其特征在于,所述用户背景信息包括:所述待共享网页对应的cookie和session,则所述待共享网页获取单元具体用于:
通过所述合并网页,向所述反向代理服务器发送请求以获取所述第一待共享网页,所述请求中包含所述cookie,所述cookie中包含所述session的标识ID;
从所述反向代理服务器接收所述第一待共享网页,所述第一待共享网页是所述反向代理服务器根据所述请求从共享网站获取的。
19.根据权利要求18所述的客户端,其特征在于,所述待共享网页获取单元具体用于:
向所述反向代理服务器发送第一页面请求,所述第一页面请求中包括所述待共享网页的共享URL、所述cookie,所述cookie中包含所述session的ID,以使所述反向代理服务器将所述待共享网页的共享URL修改为所述待共享网页的URL以生成第二页面请求,并向所述共享网站发送所述第二页面请求;
接收第一页面响应,所述第一页面响应中包括所述第一待共享网页的内容,所述第一页面响应是所述反向代理服务器根据所述共享网站针对所述第二页面请求返回的第二页面响应向所述第一客户端发送的。
20.根据权利要求16或17所述的客户端,其特征在于,所述用户背景信息包括:所述待共享网页对应的cookie、session和用户权限信息,则所述待共享网页获取单元具体用于:
向所述反向代理服务器发送第一页面请求,所述第一页面请求中包括所述待共享网页的共享URL、所述cookie和所述用户权限信息,所述cookie中包含所述session的标识ID,以使所述反向代理服务器将所述待共享网页的共享URL修改为所述待共享网页的URL以生成第二页面请求,并向共享网站发送所述第二页面请求;
接收第一页面响应,所述第一页面响应中包括所述第一待共享网页的内容,所述第一待共享网页的内容为所述共享网站根据所述用户背景信息确定的,所述第一页面响应是所述反向代理服务器根据所述共享网站针对所述第二页面请求返回的第二页面响应向所述第一客户端发送的。
21.根据权利要求16中任一项所述的客户端,其特征在于,在所述第一客户端向所述第二客户端发送所述第一客户端的DOM之前,所述客户端还包括:
隐藏模块,用于在所述发送模块向所述第二客户端发送所述第一客户端的DOM之前,根据设置隐藏需要保密的信息。
22.根据权利要求16中任一项所述的客户端,其特征在于,还包括:
检测模块,用于确定所述第一客户端的DOM是否发生变化;
所述发送模块还用于,若所述检测模块确定所述第一客户端的DOM发生变化,将所述第一客户端的DOM的变化信息发送给所述第二客户端,以使所述第二客户端根据所述变化信息修改所述第二客户端的DOM。
23.根据权利要求16中任一项所述的客户端,其特征在于,还包括:
检测模块,用于检测输入设备输入的输入信息;
所述发送模块还用于,在所述检测模块检测到输入设备输入的输入信息时,将所述输入信息发送给所述第二客户端,以使所述第二客户端根据所述输入信息修改所述第二客户端的DOM。
24.一种第二客户端,其特征在于,包括:
接收模块,用于接收第一客户端发送的共享统一资源定位符URL,所述共享URL是反向代理服务器根据所述第一客户端通过通信网页发送的待共享网页的URL和通信网页的URL映射得到的,所述共享URL中包含所述待共享网页的共享URL和所述通信网页的共享URL,所述通信网页为发起共享的网页;
获取模块,用于根据所述共享URL获取第二待共享网页,所述第二待共享网页不包含所述第一客户端的用户背景信息,所述用户背景信息包括待共享网页对应的cookie和session;所述第二待共享网页不包含所述第一客户端的用户背景信息,包括:所述第二待共享网页不是根据用户背景信息生成的;
所述接收模块,还用于接收所述第一客户端发送的所述第一客户端的文件对象模型DOM,所述第一客户端的DOM与第一待共享网页对应,所述第一待共享网页包含所述第一客户端的用户背景信息;
修改模块,用于根据所述第一客户端的DOM修改所述第二客户端的DOM,并根据修改后的所述第二客户端的DOM和所述第二待共享网页生成所述第一待共享网页;
所述获取模块具体用于:
向所述反向代理服务器发送第一页面请求,所述第一页面请求中包括所述待共享网页的共享URL,以使所述反向代理服务器将所述待共享网页的共享URL修改为所述待共享网页的URL以生成第二页面请求,并向共享网站发送所述第二页面请求;
接收第一页面响应,所述第一页面响应中包括所述第二待共享网页的内容,所述第一页面响应是所述反向代理服务器根据所述共享网站针对所述第二页面请求返回的第二页面响应向所述第二客户端发送的。
25.根据权利要求24所述的客户端,其特征在于,所述接收模块,还用于接收所述第一客户端发送的所述第一客户端的DOM的变化信息,所述变化信息是所述第一客户端在检测到所述第一客户端的DOM发生变化时向所述第二客户端发送的;
所述修改模块,还用于根据所述变化信息修改所述第二客户端的DOM。
26.根据权利要求24所述的客户端,其特征在于,所述接收模块,还用于接收所述第一客户端发送的输入信息,所述输入信息是所述第一客户端在检测到所述用户通过输入设备输入所述输入信息时向所述第二客户端发送的;
所述修改模块,还用于根据所述输入信息修改所述第二客户端的DOM。
27.一种反向代理服务器,其特征在于,包括:
接收模块,用于接收客户端通过通信网页发送的待共享网页的统一资源定位符URL,所述通信网页为发起共享的网页;
映射模块,用于将所述待共享网页的URL和所述通信网页的URL映射为共享URL,所述共享URL中包含所述待共享网页的共享URL和所述通信网页的共享URL;
发送模块,用于将所述共享URL发送给所述客户端,以使所述客户端根据所述共享URL获取待共享网页,所述待共享网页包含所述客户端的用户背景信息,所述用户背景信息包括待共享网页对应的cookie和session;所述待共享网页包含所述客户端的用户背景信息,包括:所述待共享网页是根据用户背景信息生成的;
以使客户端向第二客户端发送所述共享URL,以使所述第二客户端根据所述共享URL获取第二待共享网页,所述第二待共享网页不包含所述客户端的用户背景信息;以使客户端向所述第二客户端发送所述客户端的文件对象模型DOM,所述客户端的DOM与第一待共享网页对应,以使所述第二客户端根据所述客户端的DOM修改所述第二客户端的DOM,并根据修改后的所述第二客户端的DOM和所述第二待共享网页生成所述第一待共享网页;
所述发送模块用于将所述共享URL发送给所述客户端,以使所述客户端根据所述共享URL获取合并网页,所述合并网页中显示有所述通信网页和所述待共享网页,所述合并网页的URL为所述共享URL;所述客户端通过所述合并网页和所述客户端的用户背景信息获取所述第一待共享网页。
28.根据权利要求27所述的反向代理服务器,其特征在于,所述用户背景信息包括:所述待共享网页对应的cookie和session,所述反向代理服务器还包括:获取模块;
所述接收模块,还用于接收所述客户端发送的请求,所述请求中包含所述cookie,所述cookie中包含所述session的标识ID;
所述获取模块,用于根据所述请求从共享网站获取所述待共享网页,并将所述待共享网页发送给所述客户端。
29.根据权利要求28所述的反向代理服务器,其特征在于,所述接收模块具体用于:接收所述客户端发送的第一页面请求,所述第一页面请求中包括所述待共享网页的共享URL、所述cookie,所述cookie中包含所述session的ID;
所述获取模块具体用于:将所述第一页面请求中的所述待共享网页的共享URL修改为所述待共享网页的URL以生成第二页面请求,并将所述第二页面请求发送给共享网站;
接收所述共享网站发送的第二页面响应,所述第二页面响应中包括所述待共享网页的URL以及所述待共享网页的内容;
将所述第二页面响应中的所述待共享网页的URL修改为所述待共享网页的共享URL以生成第一页面响应,并将所述第一页面响应发送给所述客户端,所述第一页面响应中包括所述待共享网页的内容。
30.根据权利要求27所述的反向代理服务器,其特征在于,所述用户背景信息包括:所述待共享网页对应的cookie、session和用户权限信息,所述反向代理服务器还包括:获取模块;
所述接收模块,还用于接收所述客户端发送的第一页面请求,所述第一页面请求中包括所述待共享网页的共享URL、所述cookie和所述用户权限信息,所述cookie中包含所述session的标识ID;
所述获取模块,用于将所述第一页面请求中的所述待共享网页的共享URL修改为所述待共享网页的URL以生成第二页面请求,并将所述第二页面请求发送给共享网站;
所述接收模块,还用于接收所述共享网站发送的第二页面响应,所述第二页面响应中包括所述待共享网页的URL和所述待共享网页的内容,所述待共享网页的内容为所述共享网站根据所述用户背景信息确定的;
所述获取模块,还用于将所述第二页面响应中的所述待共享网页的URL修改为所述待共享网页的共享URL以生成第一页面响应,所述第一页面响应中包括所述待共享网页的内容;
所述发送模块,还用于将所述第一页面响应发送给所述客户端。
31.一种第一客户端,其特征在于,包括:处理器、存储器和***总线,所述处理器和所述存储器之间通过所述***总线连接并完成相互间的通信;
所述存储器,用于存储计算机执行指令;
所述处理器,用于运行所述计算机执行指令,执行如权利要求1至8任一所述的方法。
32.一种第二客户端,其特征在于,包括:处理器、存储器和***总线,所述处理器和所述存储器之间通过所述***总线连接并完成相互间的通信;
所述存储器,用于存储计算机执行指令;
所述处理器,用于运行所述计算机执行指令,执行如权利要求9至11任一所述的方法。
33.一种反向代理服务器,其特征在于,包括:处理器、存储器和***总线,所述处理器和所述存储器之间通过所述***总线连接并完成相互间的通信;
所述存储器,用于存储计算机执行指令;
所述处理器,用于运行所述计算机执行指令,执行如权利要求12至15任一所述的方法。
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
PCT/CN2014/078315 WO2015176321A1 (zh) | 2014-05-23 | 2014-05-23 | 信息共享方法和设备 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN105379195A CN105379195A (zh) | 2016-03-02 |
CN105379195B true CN105379195B (zh) | 2019-02-01 |
Family
ID=54553268
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201480038256.XA Active CN105379195B (zh) | 2014-05-23 | 2014-05-23 | 信息共享方法和设备 |
Country Status (4)
Country | Link |
---|---|
US (1) | US10447742B2 (zh) |
EP (1) | EP3136656B1 (zh) |
CN (1) | CN105379195B (zh) |
WO (1) | WO2015176321A1 (zh) |
Families Citing this family (11)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US10810204B2 (en) | 2017-02-27 | 2020-10-20 | Microsoft Technology Licensing, Llc | Providing access to an electronic message attachment |
US10832211B2 (en) * | 2017-02-27 | 2020-11-10 | Microsoft Technology Licensing, Llc | Opening an attachment and conversation from a messaging application |
CN108769189B (zh) * | 2018-05-28 | 2020-01-03 | 上海恺英网络科技有限公司 | 跨网络域资源的访问方法及设备 |
CN109302493B (zh) * | 2018-11-15 | 2021-06-22 | 北京金山云网络技术有限公司 | 一种用户信息共享方法、装置、电子设备及存储介质 |
FI129164B (en) * | 2018-12-20 | 2021-08-13 | Telia Co Ab | Communication solution |
US11899757B2 (en) * | 2019-12-02 | 2024-02-13 | Cox Automotive, Inc. | Systems and methods for temporary digital content sharing |
CN113542336A (zh) * | 2020-04-30 | 2021-10-22 | 北京字节跳动网络技术有限公司 | 一种信息的切换共享方法、装置、电子设备及存储介质 |
JP2022012403A (ja) * | 2020-07-01 | 2022-01-17 | キヤノン株式会社 | プログラム、情報処理装置及び制御方法 |
CN112491955B (zh) * | 2020-10-23 | 2023-07-07 | 北京思特奇信息技术股份有限公司 | 一种基于代理服务器实现iframe***数据交换的方法和*** |
CN112532730B (zh) * | 2020-12-01 | 2022-09-20 | 四川虹美智能科技有限公司 | 图片上传***及方法 |
CN113177171B (zh) * | 2021-04-16 | 2024-05-28 | 百果园技术(新加坡)有限公司 | 图表显示方法、装置、终端设备及存储介质 |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1783090A (zh) * | 2004-11-30 | 2006-06-07 | 国际商业机器公司 | 用于对象模型与xml间转换的可共享双向方法和*** |
CN101694660A (zh) * | 2009-06-01 | 2010-04-14 | 高维海 | 即时网站***以及网站与即时通讯平台结合的方法 |
CN102637193A (zh) * | 2012-02-23 | 2012-08-15 | 北京航空航天大学 | 一种基于dom与xmpp的网页即时协同浏览方法 |
US8843816B2 (en) * | 2008-04-25 | 2014-09-23 | Microsoft Corporation | Document collaboration by transforming and reflecting a document object model |
Family Cites Families (28)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7072984B1 (en) * | 2000-04-26 | 2006-07-04 | Novarra, Inc. | System and method for accessing customized information over the internet using a browser for a plurality of electronic devices |
US7149776B1 (en) * | 2001-08-31 | 2006-12-12 | Oracle International Corp. | System and method for real-time co-browsing |
US7793255B1 (en) * | 2005-03-01 | 2010-09-07 | Oracle America, Inc. | System and method for maintaining alternate object views |
US20080215965A1 (en) * | 2007-02-23 | 2008-09-04 | Tabblo, Inc. | Method for modifying an initial layout of story elements in a user-generated online story |
US20080215967A1 (en) * | 2007-02-23 | 2008-09-04 | Tabblo, Inc. | Method and system for online transformation using an image URL application programming interface (API) |
US20080215985A1 (en) * | 2007-02-23 | 2008-09-04 | Tabblo, Inc. | Method for initial layout of story elements in a user-generated online story |
US20080215964A1 (en) * | 2007-02-23 | 2008-09-04 | Tabblo, Inc. | Method and system for online creation and publication of user-generated stories |
US8261335B2 (en) * | 2007-02-23 | 2012-09-04 | Hewlett-Packard Company | Method and system for online image security |
US8041763B2 (en) * | 2007-06-12 | 2011-10-18 | International Business Machines Corporation | Method and system for providing sharable bookmarking of web pages consisting of dynamic content |
US20090037517A1 (en) * | 2007-08-02 | 2009-02-05 | Randall Wayne Frei | Method and system to share content between web clients |
US20100306642A1 (en) * | 2007-11-23 | 2010-12-02 | Koninklijke Philips Electronics N.V. | Co-browsing (java) scripted html documents |
US8341268B2 (en) * | 2009-08-28 | 2012-12-25 | Microsoft Corporation | Resource sharing in multi-principal browser |
US8806024B1 (en) * | 2010-09-14 | 2014-08-12 | OMG Holdings, Inc. | Bi-directional sharing of a document object model |
US8739044B1 (en) * | 2011-03-04 | 2014-05-27 | Amazon Technologies, Inc. | Collaborative browsing on a network site |
CN102111454A (zh) * | 2011-03-11 | 2011-06-29 | 创博亚太科技(山东)有限公司 | 一种分享网页或多媒体信息的方法和*** |
US8775923B1 (en) * | 2011-09-26 | 2014-07-08 | Google Inc. | Web page restoration |
US8225191B1 (en) * | 2011-11-07 | 2012-07-17 | Google Inc. | Synchronizing web browsers |
US9391832B1 (en) * | 2011-12-05 | 2016-07-12 | Menlo Security, Inc. | Secure surrogate cloud browsing |
CN102420782B (zh) * | 2011-12-18 | 2018-04-20 | 上海量明科技发展有限公司 | 一种通过即时通信进行网页共享的方法、客户端及*** |
JP6064381B2 (ja) * | 2012-06-13 | 2017-01-25 | 株式会社リコー | 情報共有システム |
US9495081B2 (en) * | 2012-07-13 | 2016-11-15 | SaleMove, Inc. | Co-browsing between one or more operators and one or more visitors |
KR20180079455A (ko) * | 2012-07-19 | 2018-07-10 | 글랜스 네트웍스, 인크 | 다른 형태의 정보 공유를 통한 코브라우징의 통합 |
US20140067934A1 (en) * | 2012-08-30 | 2014-03-06 | Sarah Ware | System and method to provide a social network layer over the World-Wide Web and other networks |
US9323730B2 (en) * | 2012-09-05 | 2016-04-26 | Hbr Labs Llc | Platform and method for real-time synchronized co-browsing of web pages |
US11048858B2 (en) * | 2012-11-21 | 2021-06-29 | Roofoveryourhead Marketing Ltd. | Browser extension for the collection and distribution of data and methods of use thereof |
US9613011B2 (en) * | 2012-12-20 | 2017-04-04 | Cable Television Laboratories, Inc. | Cross-reference of shared browser applications |
US9832178B2 (en) * | 2012-12-20 | 2017-11-28 | Cable Television Laboratories, Inc. | Administration of web page |
US20150332348A1 (en) * | 2014-05-13 | 2015-11-19 | Pubmatic, Inc. | Online advertising e-cpm goal with improved fill rate |
-
2014
- 2014-05-23 CN CN201480038256.XA patent/CN105379195B/zh active Active
- 2014-05-23 EP EP14892469.9A patent/EP3136656B1/en active Active
- 2014-05-23 WO PCT/CN2014/078315 patent/WO2015176321A1/zh active Application Filing
-
2016
- 2016-11-22 US US15/358,610 patent/US10447742B2/en active Active
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1783090A (zh) * | 2004-11-30 | 2006-06-07 | 国际商业机器公司 | 用于对象模型与xml间转换的可共享双向方法和*** |
US8843816B2 (en) * | 2008-04-25 | 2014-09-23 | Microsoft Corporation | Document collaboration by transforming and reflecting a document object model |
CN101694660A (zh) * | 2009-06-01 | 2010-04-14 | 高维海 | 即时网站***以及网站与即时通讯平台结合的方法 |
CN102637193A (zh) * | 2012-02-23 | 2012-08-15 | 北京航空航天大学 | 一种基于dom与xmpp的网页即时协同浏览方法 |
Also Published As
Publication number | Publication date |
---|---|
EP3136656A4 (en) | 2017-06-14 |
US20170078343A1 (en) | 2017-03-16 |
EP3136656B1 (en) | 2020-07-15 |
US10447742B2 (en) | 2019-10-15 |
WO2015176321A1 (zh) | 2015-11-26 |
EP3136656A1 (en) | 2017-03-01 |
CN105379195A (zh) | 2016-03-02 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN105379195B (zh) | 信息共享方法和设备 | |
US10776447B2 (en) | Digital communications platform for webpage overlay | |
EP2842072B1 (en) | Retrieving content from website through sandbox | |
US9183316B2 (en) | Providing action links to share web content | |
US9875314B2 (en) | Content request with HTTP request-header rendering template that is independent of content storage location | |
US9311283B2 (en) | System for clipping webpages by traversing a dom, and highlighting a minimum number of words | |
US8527862B2 (en) | Methods for making ajax web applications bookmarkable and crawlable and devices thereof | |
US9311281B2 (en) | Methods for facilitating web page image hotspots and devices thereof | |
WO2014186489A2 (en) | Enhanced links in curation and collaboration applications | |
WO2018001124A1 (zh) | 网页文件发送方法、网页渲染方法及装置、网页渲染*** | |
CN102799372A (zh) | 一种图片信息的上传方法及上传装置 | |
US8316103B2 (en) | Method for acquiring long data by GET method | |
US10104196B2 (en) | Method of and server for transmitting a personalized message to a user electronic device | |
WO2015058614A1 (zh) | 一种书签存储方法及装置、确定待浏览书签的方法及装置 | |
US8127314B2 (en) | Method for using information in another domain, program for using information in another domain, and information transfer program | |
WO2016092412A1 (en) | Generation of mapping definitions for content management system | |
AU2015231829A1 (en) | Asset collection service through capture of content | |
US11770437B1 (en) | Techniques for integrating server-side and client-side rendered content | |
JP2018504725A (ja) | アクセスコンテンツを表示する方法及びサービス | |
CN103986729B (zh) | 建立安全信息的方法和装置 | |
KR20140101910A (ko) | 웹서비스 관리시스템 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |