一种iOS下web页面加载优化策略制造技术

技术编号:19008971 阅读:30 留言:0更新日期:2018-09-22 08:52
本发明专利技术涉及一种iOS下web页面加载优化策略,包括如下步骤:用户开启缓存加载功能,用户尝试打开web页面,将web页面对应的url生成hash值,以hash值为关键字去缓存器获取,如果能成功获取,则获取当前时间,以hash值为关键字,从缓存器中获取缓存时间,如果缓存时间和当前时间的差值,未超过失效时限,则以hash值为关键字,从缓存器中获取缓存路径,如果缓存路径存在,则获取缓存文件,如果缓存文件存在,则使用缓存加载web页面。当上述判断不满足则发起正常网络请求。本发明专利技术,利用缓存器,存储网络请求得到的数据,将这些数据与URL关联,在一定期限内,重复访问相同URL时,不再发起网络请求,而是根据策略从缓存器中获取,速度快,提高效率,减少了网络带宽的占用,节约了系统资源,避免网络问题导致的卡顿情况。

An optimization strategy for loading web pages under iOS

The invention relates to a web page loading optimization strategy under iOS, which comprises the following steps: the user opens the cache loading function, the user tries to open the web page, generates the hash value of the corresponding URL of the web page, and uses the hash value as the keyword to obtain it by the cache. If it can be successfully obtained, the current time is obtained with the hash value as the keyword. Get the cache time from the cache, if the difference between the cache time and the current time does not exceed the expiration time, then get the cache path from the cache with the hash value as the key, if the cache path exists, get the cache file, if the cache file exists, then use the cache to load the web page. When the above judgment is not satisfied, a normal network request is initiated. The invention uses a buffer to store the data obtained by network requests, associates these data with the URL, no longer initiates network requests when the same URL is repeatedly accessed within a certain period of time, but obtains the data from the buffer according to the strategy, which is fast and efficient, reduces the occupation of network bandwidth and saves system resources. Avoid the Catton situation caused by network problems.

【技术实现步骤摘要】
一种iOS下web页面加载优化策略
本专利技术涉及页面加载
,具体说是一种iOS下web页面加载优化策略。
技术介绍
在iOS系统中,加载网页、文件、html常用UIWebView控件(可以简单理解为一个在iOS端显示网页的一个控件),UIWebView控件是用来加载加载网页数据的一个框。UIWebView可以用来加载pdf、word、doc等等文件。在UIWebView控件加载网页、文件、html等时,通常首先要有一个资源的地址即URL用于定位资源,然后把URL告诉给服务器,请求从该URL获取数据,这一请求将发给服务器。UIWebView继承于UIView,因此,其初始化方法和一般的view一样,通过alloc和init进行初始化,其加载数据的方式有三种:第一种:-(void)loadRequest:(NSURLRequest*)request;这是加载网页最常用的一种方式,通过一个网页URL来进行加载,这个URL可以是远程的也可以是本地的。第二种:-(void)loadHTMLString:(NSString*)stringbaseURL:(NSURL*)baseURL;这个方法需要将httml文件读取为字符串,其中baseURL是我们自己设置的一个路径,用于寻找html文件中引用的图片等素材。第三种:-(void)loadData:(NSData*)dataMIMEType:(NSString*)MIMETypetextEncodingName:(NSString*)textEncodingNamebaseURL:(NSURL*)baseURL;这个方式使用的比较少,但也更加自由,其中data是文件数据,MIMEType是文件类型,textEncodingName是编码类型,baseURL是素材资源路径。在web页面加载时,由于总是需要从远端获取,不但占用了网络带宽,而且需要消耗较多的系统资源,有必要进一步给予优化。
技术实现思路
针对现有技术中存在的缺陷,本专利技术的目的在于提供一种iOS下web页面加载优化策略,利用缓存器,存储网络请求得到的数据,将这些数据与URL关联,在一定期限内,重复访问相同URL时,不再发起网络请求,而是根据策略从缓存器中获取,速度快,提高效率,减少了网络带宽的占用,节约了系统资源,避免网络问题导致的卡顿情况。为达到以上目的,本专利技术采取的技术方案是:一种iOS下web页面加载优化策略,其特征在于,包括如下步骤:用户开启缓存加载功能,用户尝试打开web页面,将web页面对应的url生成hash值,以hash值为关键字去缓存器获取,如果不能成功获取,则发起正常网络请求,如果能成功获取,则获取当前时间,以hash值为关键字,从缓存器中获取缓存时间,如果缓存时间和当前时间的差值,超过失效时限,则发起正常网络请求,如果缓存时间和当前时间的差值,未超过失效时限,则以hash值为关键字,从缓存器中获取缓存路径,如果缓存路径不存在,则发起正常网络请求,如果缓存路径存在,则获取缓存文件,如果缓存文件不存在,则发起正常网络请求,如果缓存文件存在,则使用缓存加载web页面。在上述技术方案的基础上,发起正常网络请求后,首先判断是否请求到数据,如果没有请求到数据,则等待数据,如果有请求到数据,则进入缓存器,判断缓存器是否达到阈值,如果已达到阈值,则使用LRU算法淘汰数据,清理缓存器,如果未达到阈值,则获取当前时间,将当前时间存入缓存器,作为缓存时间,获取数据保存路径,作为缓存路径,将数据保存到本地硬盘,将缓存路径存入缓存器,完成缓存处理。在上述技术方案的基础上,等待数据如果超时或超次后,停止等待,返回错误信息。本专利技术所述的iOS下web页面加载优化策略,利用缓存器,存储网络请求得到的数据,将这些数据与URL关联,在一定期限内,重复访问相同URL时,不再发起网络请求,而是根据策略从缓存器中获取,速度快,提高效率,减少了网络带宽的占用,节约了系统资源,避免网络问题导致的卡顿情况。附图说明本专利技术有如下附图:图1本专利技术的流程图。具体实施方式以下结合附图对本专利技术作进一步详细说明。如图1所示,本专利技术所述的iOS下web页面加载优化策略,包括如下步骤:用户开启缓存加载功能,用户尝试打开web页面,将web页面对应的url生成hash值,以hash值为关键字去缓存器获取,如果不能成功获取,则发起正常网络请求,如果能成功获取,则获取当前时间,以hash值为关键字,从缓存器中获取缓存时间,如果缓存时间和当前时间的差值,超过失效时限,则发起正常网络请求,如果缓存时间和当前时间的差值,未超过失效时限,则以hash值为关键字,从缓存器中获取缓存路径,如果缓存路径不存在,则发起正常网络请求,如果缓存路径存在,则获取缓存文件,如果缓存文件不存在,则发起正常网络请求,如果缓存文件存在,则使用缓存加载web页面。在上述技术方案的基础上,发起正常网络请求后,首先判断是否请求到数据,如果没有请求到数据,则等待数据,如果有请求到数据,则进入缓存器,判断缓存器是否达到阈值,如果已达到阈值,则使用LRU算法淘汰数据,清理缓存器,如果未达到阈值,则获取当前时间,将当前时间存入缓存器,作为缓存时间,获取数据保存路径,作为缓存路径,将数据保存到本地硬盘,将缓存路径存入缓存器,完成缓存处理。在上述技术方案的基础上,等待数据如果超时或超次后,停止等待,返回错误信息。本说明书中未作详细描述的内容属于本领域专业技术人员公知的现有技术。本文档来自技高网
...
一种iOS下web页面加载优化策略

【技术保护点】
1.一种iOS下web页面加载优化策略,其特征在于,包括如下步骤:用户开启缓存加载功能,用户尝试打开web页面,将web页面对应的url生成hash值,以hash值为关键字去缓存器获取,如果不能成功获取,则发起正常网络请求,如果能成功获取,则获取当前时间,以hash值为关键字,从缓存器中获取缓存时间,如果缓存时间和当前时间的差值,超过失效时限,则发起正常网络请求,如果缓存时间和当前时间的差值,未超过失效时限,则以hash值为关键字,从缓存器中获取缓存路径,如果缓存路径不存在,则发起正常网络请求,如果缓存路径存在,则获取缓存文件,如果缓存文件不存在,则发起正常网络请求,如果缓存文件存在,则使用缓存加载web页面。

【技术特征摘要】
1.一种iOS下web页面加载优化策略,其特征在于,包括如下步骤:用户开启缓存加载功能,用户尝试打开web页面,将web页面对应的url生成hash值,以hash值为关键字去缓存器获取,如果不能成功获取,则发起正常网络请求,如果能成功获取,则获取当前时间,以hash值为关键字,从缓存器中获取缓存时间,如果缓存时间和当前时间的差值,超过失效时限,则发起正常网络请求,如果缓存时间和当前时间的差值,未超过失效时限,则以hash值为关键字,从缓存器中获取缓存路径,如果缓存路径不存在,则发起正常网络请求,如果缓存路径存在,则获取缓存文件,如果缓存文件不存在,则发起正常网络请求...

【专利技术属性】
技术研发人员:邱扬
申请(专利权)人:北京酷我科技有限公司
类型:发明
国别省市:北京,11

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1