发明内容
本发明的目的是:提供一种网页上实现文件下载锁定同步的方法。
为了达到上述目的,本发明的技术方案为:一种网页上实现文件下载锁定同步的方法,包括以下步骤:
1)源用户打开网页,网页请求服务器1,加载具有文件下载功能的文件列表,并根据各个文件的下载状态决定文件是否可进行下载操作,网页加载Flash插件并与通讯服务器建立永久连接。
2)当源用户对单个文件进行下载锁定操作时,若是允许下载状态则修改状态为禁止下载状态,若是禁止下载状态则修改状态为允许下载状态,并异步请求服务器1将此文件的下载状态保存到服务器1,同时调用Flash插件的应用程序编程接口(API)将此文件下载状态信息发送到通讯服务器。
3)目标用户打开网页加载具有文件下载功能的文件列表,并根据各个文件的下载状态决定文件是否可进行下载操作,同时加载Flash插件与通讯服务器建立永久连接。
4)当通讯服务器收到源用户发送过来的文件下载状态信息后,立即转发给所有需要同步的目标用户。
5)目标用户收到通讯服务器发送过来的文件下载状态信息后,通过Flash插件调用网页函数传入文件下载状态,网页函数进行处理后对文件的下载功能进行相应更改,并在网页进行体现。
上述技术方案中,步骤1)包含如下过程:
1a)源用户打开网页,网页请求服务器1,加载具有文件下载功能的文件列表,并根据各个文件的下载状态决定文件是否可进行下载操作,并在列表显示时做出相应的体现;
1b)同时网页自动加载Flash插件,Flash插件与通讯服务器建立永久连接,用户发送和接收文件下载状态信息。
上述技术方案中,步骤2)包含如下过程:
2a)当源用户对单个文件进行下载锁定操作时,根据当前的文件下载状态进行判断,若是允许则为禁用,若是禁用则为允许;
2b)调用JavaScript函数,通过Ajax异步请求服务器1,将此文件的下载状态保存到服务器1数据库中;
2c)通过JavaScript调用Flash通过ExternalInterface.addCallback注册过的文件下载状态发送函数,传入此文件下载状态信息,Flash调用XMLSocket类方法将此文件下载状态信息发送到通讯服务器。
上述技术方案中,步骤3)包含如下过程:
3a)目标用户打开网页,网页请求服务器1,加载具有文件下载功能的文件列表,并根据各个文件的下载状态决定文件是否可进行下载操作,并在列表显示时做出相应的体现;
3b)同时网页自动加载Flash插件,Flash插件与通讯服务器建立永久连接,用户发送和接收文件下载状态信息。
上述技术方案中,步骤4)包含如下过程:
当通讯服务器接收到源用户发送过来文件下载状态信息后,立即转发给所有连接到通讯服务器的需要同步的目标用户。
上述技术方案中,步骤5)包含如下过程:
5a)目标用户Flash插件接收到通讯服务器发送过来的文件下载状态信息后,通过Flash插件的ExternalInterface.call方法调用网页JavaScript文件下载状态处理函数,并传入接收到的文件下载状态信息;
5b)JavaScript文件下载状态处理函数根据传递进来的文件下载状态信息在网页中查找对应的文件,并对其下载状态进行操作和相应的页面显示修改。
技术方案步骤2)过程中的XMLSocket可以为XMLSocket、socket、NetConnection或者其他可以用于通讯的类。
本发明与现有技术相比具有以下优点:
1)可以直观地知道每个文件当前的下载状态。
2)锁定操作采用无刷新技术,反应迅速,用户体验好。
3)下载状态页面与后台同步操作永久有效。
4)下载状态可以即时同步到目标用户端,无误差。
5)完全基于网页,不需要下载任何插件,绿色、环保,可广泛运用于网络会议、远程教育等互联网应用中。
具体实施方式
一种网页上实现文件下载锁定同步的方法,包括以下步骤:
1)源用户打开网页,网页请求服务器1,加载具有文件下载功能的文件列表,并根据各个文件的下载状态决定文件是否可进行下载操作,网页加载Flash插件并与通讯服务器建立永久连接。
2)当源用户对单个文件进行下载锁定操作时,若是允许下载状态则修改状态为禁止下载状态,若是禁止下载状态则修改状态为允许下载状态,并异步请求服务器1将此文件的下载状态保存到服务器1,同时调用Flash插件的应用程序编程接口(Application Programming Interface,API)将此文件下载状态信息发送到通讯服务器。
3)目标用户打开网页加载具有文件下载功能的文件列表,并根据各个文件的下载状态决定文件是否可进行下载操作,同时加载Flash插件与通讯服务器建立永久连接。
4)当通讯服务器收到源用户发送过来的文件下载状态信息后,立即转发给所有需要同步的目标用户。
5)目标用户收到通讯服务器发送过来的文件下载状态信息后,通过Flash插件调用网页函数传入文件下载状态信息,网页函数进行处理后对文件的下载功能进行相应更改,并在网页进行体现。
下面进一步详细说明本发明所述的方法:
参见说明书附图,源用户打开网页,网页请求服务器1,加载具有文件下载功能的文件列表,并根据各个文件的下载状态决定文件是否可进行下载操作,并在列表显示时做出相应的体现;同时网页自动加载Flash插件,Flash插件与通讯服务器建立永久连接,用户发送和接收文件下载状态信息;当源用户对单个文件进行下载锁定操作时,根据当前的文件下载状态进行判断,若是允许则为禁用,若是禁用则为允许;调用JavaScript函数,通过Ajax异步请求服务器1,将此文件的下载状态保存到服务器1数据库中;通过JavaScript调用Flash通过ExternalInterface.addCallback注册过的文件下载状态发送函数,传入此文件下载状态信息,Flash调用XMLSocket类方法将此文件下载状态信息发送到通讯服务器;目标用户打开网页,网页请求服务器1,加载具有文件下载功能的文件列表,并根据各个文件的下载状态决定文件是否可进行下载操作,并在列表显示时做出相应的体现;同时网页自动加载Flash插件,Flash插件与通讯服务器建立永久连接,用户发送和接收文件下载状态信息;当通讯服务器接收到源用户发送过来文件下载状态信息后,立即转发给所有连接到通讯服务器的需要同步的目标用户;目标用户Flash插件接收到通讯服务器发送过来的文件下载状态信息后,通过Flash的ExternalInterface.call方法调用网页JavaScript文件下载状态处理函数,并传入接收到的文件下载状态信息;JavaScript文件下载状态处理函数根据传递进来的文件下载状态信息在网页中查找对应的文件,并对其下载状态进行操作和相应的页面显示修改。