脚本文件的加载方法、脚本文件生成方法及装置的制造方法_3

文档序号:8258110阅读:来源:国知局
文件列表中的脚本文件,根据文件列表生成浏览器需要加载的新的脚本文件,执行步骤406。
[0111]在一实施例中,缓存服务器可以将文件列表中的脚本文件依据函数调用关系或者函数之间的逻辑关系合并为一个新的脚本文件。
[0112]在步骤S404中,如果缓存服务器未存储有文件列表中的脚本文件,向web浏览器获取新的脚本文件,执行步骤S405。
[0113]在一实施例中,如果缓存服务器上未存储文件列表中的脚本文件,则缓存服务器可以向web服务器发送上述文件列表,并从web服务器获取脚本文件;在一实施例中,web服务器可以根据文件列表依据函数调用关系或者函数之间的逻辑关系合并为一个新的脚本文件,在另一实施例中,web服务器可以将文件列表中的脚本文件发送给缓存服务器,缓存服务器依据函数调用关系或者函数之间的逻辑关系合并为一个新的脚本文件。
[0114]在步骤S405中,将新的脚本文件发送给浏览器,流程结束。
[0115]如图4B,终端设备41可以通过jsloader实现动态异步加载js文件,当需要加载脚本文件时,向缓存服务器42 (或者源内容分发网络)发送急需要加载的脚本文件的文件列表,例如,需要加载filel.js、file2.js、file3.js文件,则将该三个脚本文件的文件名称以文件列表的方式发送给缓存服务器42。
[0116]缓存服务器42接收到文件列表之后,确定缓存服务器42上是否存储了该文件列表中的脚本文件,如果存储,则将文件列表中的脚本文件依据相互之间的函数逻辑关系合并为一个新的脚本文件,并将该新的脚本文件返回给终端设备41上的浏览器。
[0117]如果缓存服务器42上未存储该文件列表中的脚本文件,缓存服务器42向web服务器43发送该文件列表,web服务器43将文件列表中的脚本文件进行解析,并将文件列表中的脚本文件依据相互之间的函数逻辑关系合并为一个新的脚本文件,将该新的脚本文件返回缓存服务器42,缓存服务器42再将该新的脚本文件发送至终端设备41的浏览器;或者,web服务器43可以直接将文件列表中的脚本文件直接返回给缓存服务器42,缓存服务器42再根据文件列表中的脚本文件之间的函数逻辑关系生成一个新的脚本文件,并将该新的脚本文件发送给终端设备41的浏览器。
[0118]终端设备41的浏览器停止单进程正在执行的任务,通过加载该新的脚本文件即可。
[0119]本实施例中,通过生成新的脚本文件并将新的脚本文件发送给浏览器,浏览器停止执行单进程中的任务,并通过单进程加载新的脚本文件,由于整个脚本文件的加载过程并没有使浏览器处于等待过程,因此本公开实施例可以有效地避免在加载脚本文件的过程中产生的阻塞现象。
[0120]图5是根据一示例性实施例示出的脚本文件的加载装置的框图,应用在终端设备上,如图5所示,脚本文件的加载装置可包括:
[0121]第一发送模块51,被配置为当浏览器需要加载脚本文件时,向缓存服务器发送脚本文件的文件列表,通知浏览器通过异步加载的方式执行单进程中的任务;
[0122]第一接收模块52,被配置为接收缓存服务器根据第一发送模块51发送的文件列表生成的新的脚本文件;
[0123]加载模块53,被配置为通过单进程加载第一接收模块52接收到的新的脚本文件。
[0124]图6是根据一示例性实施例示出的另一种脚本文件的加载装置的框图,如图6所示,在上述图5所示实施例的基础上,新的脚本文件中的函数逻辑关系可以由需要加载的脚本文件之间的函数逻辑关系确定,加载模块53可包括:
[0125]加载子模块531,被配置为根据第一接收模块52接收到的新的脚本文件中的函数逻辑关系通过单进程加载新的脚本文件。
[0126]图7是根据一示例性实施例示出的脚本文件生成装置的框图,应用在缓存服务器上,如图7所示,脚本文件的加载装置包括:
[0127]第二接收模块71,被配置为接收浏览器需要加载的脚本文件的文件列表;
[0128]确定模块72,被配置为根据第二接收模块71接收到的文件列表确定浏览器需要加载的新的脚本文件,新的脚本文件的函数逻辑关系与两个以上的脚本文件的函数逻辑关系相一致;
[0129]第二发送模块73,被配置为将确定模块72确定的新的脚本文件发送给浏览器。
[0130]图8是根据一示例性实施例示出的另一种脚本文件生成装置的框图,如图8所示,在上述图7所示实施例的基础上,确定模块72可包括:
[0131]检测子模块721,被配置为检测缓存服务器上是否存储第二接收模块71接收到的文件列表中的脚本文件;
[0132]生成子模块722,被配置为如果检测子模块721检测到缓存服务器存储有文件列表中的脚本文件,根据文件列表生成浏览器需要加载的新的脚本文件;
[0133]获取子模块723,被配置为如果检测子模块721检测到缓存服务器未存储有文件列表中的脚本文件,向web浏览器获取新的脚本文件。
[0134]在一实施例中,获取子模块723可包括:
[0135]发送子模块7231,被配置为向web服务器发送文件列表;
[0136]接收子模块7232,被配置为接收web服务器根据发送子模块7231发送的文件列表生成的新的脚本文件。
[0137]关于上述实施例中的装置,其中各个模块执行操作的具体方式已经在有关该方法的实施例中进行了详细描述,此处将不做详细阐述说明。
[0138]图9是根据一示例性实施例示出的一种适用于为便携式设备充电的装置的框图。例如,装置900可以是移动电话,计算机,数字广播终端,消息收发设备,游戏控制台,平板设备,医疗设备,健身设备,个人数字助理等。
[0139]参照图9,装置900可以包括以下一个或多个组件:处理组件902,存储器904,电源组件906,多媒体组件908,音频组件910,输入/输出(I/O)的接口 912,传感器组件914,以及通信组件916。
[0140]处理组件902通常控制装置900的整体操作,诸如与显示,电话呼叫,数据通信,相机操作和记录操作相关联的操作。处理元件902可以包括一个或多个处理器920来执行指令,以完成上述的方法的全部或部分步骤。此外,处理组件902可以包括一个或多个模块,便于处理组件902和其他组件之间的交互。例如,处理部件902可以包括多媒体模块,以方便多媒体组件908和处理组件902之间的交互。
[0141 ] 存储器904被配置为存储各种类型的数据以支持在设备900的操作。这些数据的示例包括用于在装置900上操作的任何应用程序或方法的指令,联系人数据,电话簿数据,消息,图片,视频等。存储器904可以由任何类型的易失性或非易失性存储设备或者它们的组合实现,如静态随机存取存储器(SRAM),电可擦除可编程只读存储器(EEPROM),可擦除可编程只读存储器(EPROM),可编程只读存储器(PROM),只读存储器(ROM),磁存储器,快闪存储器,磁盘或光盘。
[0142]电力组件906为装置900的各种组件提供电力。电力组件906可以包括电源管理系统,一个或多个电源,及其他与为装置900生成、管理和分配电力相关联的组件。
[0143]多媒体组件908包括在所述装置900和用户之间的提供一个输出接口的屏幕。在一些实施例中,屏幕可以包括液晶显示器(LCD)和触摸面板(TP)。如果屏幕包括触摸面板,屏幕可以被实现为触摸屏,以接收来自用户的输入信号。触摸面板包括一个或多个触摸传感器以感测触摸、滑动和触摸面板上的手势。所述触摸传感器可以不仅感测触摸或滑动动作的边界,而且还检测与所述触摸或滑动操作相关的持续时间和压力。在一些实施例中,多媒体组件908包括一个前置摄像头和/或后置摄像头。当设备900处于操作模式,如拍摄模式或视频模式时,前置摄像头和/或后置摄像头可以接收外部的多媒体数据。每个前置摄像头和后置摄像头可以是一个固定的光学透镜系统或具有焦距和光学变焦能力。
[0144]音频组件910被配置为输出和/或输入音频信号。例如,音频组件910包括一个麦克风(MIC),当装置900处于操作模式,如呼叫模式、记录模式和语音识别模式时,麦克风被配置为接收外部音频信号。所接收的音频信号可以被进一步存储在存储器904或经由通信组件916发送。在一些实施例中,音频组件910还包括一个扬声器,用于输出音频信号。
[0145]I/O接口 912为处理组件902和外围接口模块之间提供接口,上述外围接口模块可以是键盘,点击轮,按钮等。这些按钮可包括但不限于:主页按钮、音量按钮、启动按钮和锁定按钮。
[0146]传感器组件914包括一个或多个传感器,用于为装置900提供各个方面的状态评估。例如,传感器组件914可以检测到设备900的打开/关闭状态,组件的相对定位,例如所述组件为装置900的显示器和小键盘,传感器组件914还可以检测装置900或装置900一个组件的位置改变,用户与装置900接触的存在或
当前第3页1 2 3 4 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1