CN103366019B - 一种基于iOS设备的网页拦截方法和设备 - Google Patents
一种基于iOS设备的网页拦截方法和设备 Download PDFInfo
- Publication number
- CN103366019B CN103366019B CN201310338264.3A CN201310338264A CN103366019B CN 103366019 B CN103366019 B CN 103366019B CN 201310338264 A CN201310338264 A CN 201310338264A CN 103366019 B CN103366019 B CN 103366019B
- Authority
- CN
- China
- Prior art keywords
- character string
- application program
- url
- system component
- module
- 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
- 238000000034 method Methods 0.000 title claims abstract description 61
- 230000004044 response Effects 0.000 claims abstract description 104
- 230000008569 process Effects 0.000 claims abstract description 13
- 230000008878 coupling Effects 0.000 claims description 9
- 238000010168 coupling process Methods 0.000 claims description 9
- 238000005859 coupling reaction Methods 0.000 claims description 9
- 230000014509 gene expression Effects 0.000 claims description 8
- 239000000284 extract Substances 0.000 claims description 7
- 239000000203 mixture Substances 0.000 claims description 6
- 238000012544 monitoring process Methods 0.000 claims description 5
- 230000001960 triggered effect Effects 0.000 claims description 5
- 238000005194 fractionation Methods 0.000 claims description 4
- 230000005540 biological transmission Effects 0.000 claims description 3
- 230000003111 delayed effect Effects 0.000 claims 1
- 238000000151 deposition Methods 0.000 claims 1
- 230000005611 electricity Effects 0.000 abstract description 5
- 238000012546 transfer Methods 0.000 description 4
- 206010008190 Cerebrovascular accident Diseases 0.000 description 3
- 208000006011 Stroke Diseases 0.000 description 3
- 235000013399 edible fruits Nutrition 0.000 description 2
- 238000005516 engineering process Methods 0.000 description 2
- 241000700605 Viruses Species 0.000 description 1
- 230000009286 beneficial effect Effects 0.000 description 1
- 230000008901 benefit Effects 0.000 description 1
- 230000008859 change Effects 0.000 description 1
- 230000007547 defect Effects 0.000 description 1
- 230000001934 delay Effects 0.000 description 1
- 238000011161 development Methods 0.000 description 1
- 238000005538 encapsulation Methods 0.000 description 1
- 238000001914 filtration Methods 0.000 description 1
- 239000007943 implant Substances 0.000 description 1
- 230000000977 initiatory effect Effects 0.000 description 1
- 230000007246 mechanism Effects 0.000 description 1
- 230000006855 networking Effects 0.000 description 1
- 230000009467 reduction Effects 0.000 description 1
- 238000012827 research and development Methods 0.000 description 1
- 230000000630 rising effect Effects 0.000 description 1
- 230000003068 static effect Effects 0.000 description 1
Classifications
-
- 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
-
- 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
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L61/00—Network arrangements, protocols or services for addressing or naming
- H04L61/45—Network directories; Name-to-address mapping
- H04L61/4553—Object oriented directories, e.g. common object request broker architecture [CORBA] name server
-
- 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
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/50—Network services
- H04L67/56—Provisioning of proxy services
- H04L67/568—Storing data temporarily at an intermediate stage, e.g. caching
-
- Y—GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y02—TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
- Y02D—CLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
- Y02D10/00—Energy efficient computing, e.g. low power processors, power management or thermal management
-
- Y—GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y02—TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
- Y02D—CLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
- Y02D30/00—Reducing energy consumption in communication networks
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Databases & Information Systems (AREA)
- Theoretical Computer Science (AREA)
- Library & Information Science (AREA)
- Data Mining & Analysis (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Information Transfer Between Computers (AREA)
Abstract
本发明公开一种基于iOS设备的网页拦截方法和设备,应用于包括应用程序和系统组件的iOS设备中,应用程序通过对系统默认的统一资源定位符缓存对象进行子类化处理,得到对网络请求的控制权,使用链接字符串,对从请求消息中解析出的统一资源定位符字符串进行匹配,并在匹配成功时,生成伪装响应数据,并根据该伪装响应数据进行显示,能够实现对网页广告或恶意网页的拦截,降低对系统资源和网络资源的占用,提高系统的运行速度以及用户访问网络的速度和流畅度,减少对设备电量的消耗。
Description
技术领域
本发明涉及计算机技术领域,特别涉及一种基于iOS设备的网页拦截方法和设备。
背景技术
随着互联网的迅猛发展,iOS(苹果研发操作系统)设备的普及率也日益提高。iOS设备是使用iOS作为其操作系统的设备,包括iPhone、iPad、iPod Touch以及Apple TV等产品。用户在使用iOS设备中的网页浏览器访问网页时,通常会在不知情的情况下触发预置的网页广告或者恶意网页。其中,网页广告通过使用网站上的广告横幅、文本链接和多媒体等方法,将广告信息通过网络传递到互联网用户。
发明人在实现本发明的过程中,发现现有技术至少存在以下缺陷:
网站上预置的网页广告或者恶意网页被触发后,会占用系统资源和网络资源,降低系统的运行速度以及用户访问网络的速度和流畅度;对于移动设备而言,网页广告和恶意网页还会消耗设备的电量。此外,恶意网页被触发后,还会向客户端植入病毒,实现对客户端的监听,从客户端中盗取通信录、用户个人信息等隐私信息,甚至对客户端以及使用该客户端的用户进行定位,带来巨大的安全隐患。
发明内容
本发明提供了一种基于iOS设备的网页拦截方法和设备,以解决现有技术中由于触发网页广告或恶意网页而导致资源被占用的问题。
本发明提供了一种基于iOS设备的网页拦截方法,应用于包括应用程序和系统组件的iOS设备中,所述方法包括以下步骤:
S1、所述应用程序启动,创建统一资源定位符缓存类的子类对象,将所述子类对象指定为统一资源定位符缓存对象,所述统一资源定位符缓存对象为所述系统组件发起网络请求时访问的对象;
S2、所述应用程序获取用户输入的超文本传输协议地址,根据所述超文本传输协议地址生成第一请求消息,将所述第一请求消息发送给所述系统组件;
S3、所述应用程序通过所述子类对象,监听所述系统组件发起的网络请求;
S4、当所述应用程序监听到所述系统组件发起的网络请求时,所述应用程序从所述系统组件获取第二请求消息,对所述第二请求消息进行解析,得到所述第二请求消息所包含的统一资源定位符字符串;
S5、所述应用程序使用链接字符串对解析出的统一资源定位符字符串进行匹配,如果匹配成功,则执行步骤S6;如果匹配失败,则执行步骤S7;
S6、所述应用程序生成伪装响应数据,将所述伪装响应数据返回给所述系统组件,通过所述系统组件对所述伪装响应数据进行显示处理,并返回步骤S3;
S7、所述应用程序向网站服务器发送所述第二请求消息,接收所述网站服务器返回的响应消息,将所述响应消息发送给所述系统组件,并返回步骤S3。
本发明还提供了一种iOS设备,包括应用程序和系统组件,所述应用程序包括:
初始化模块,用于在所述应用程序启动时,创建统一资源定位符缓存类的子类对象,将所述子类对象指定为统一资源定位符缓存对象,所述统一资源定位符缓存对象为所述系统组件发起网络请求时访问的对象;
请求模块,用于获取用户输入的超文本传输协议地址,根据所述超文本传输协议地址生成第一请求消息,将所述第一请求消息发送给所述系统组件;
监听模块,用于通过所述初始化模块创建的所述子类对象,监听所述系统组件发起的网络请求;
解析模块,用于在所述监听模块监听到所述系统组件发起的网络请求时,从所述系统组件获取第二请求消息,对所述第二请求消息进行解析,得到所述第二请求消息所包含的统一资源定位符字符串;
匹配模块,用于使用链接字符串对所述解析模块解析出的统一资源定位符字符串进行匹配;
伪装模块,用于在所述匹配模块匹配成功时,生成伪装响应数据,将所述伪装响应数据返回给所述系统组件,通过所述系统组件对所述伪装响应数据进行显示处理;
第一响应模块,用于在所述匹配模块匹配失败时,向网站服务器发送所述第二请求消息,接收所述网站服务器返回的响应消息,将所述响应消息发送给所述系统组件。
本发明达到的有益效果:通过对系统默认的URL(Uniform/UniversalResource Locator,统一资源定位符)缓存对象进行子类化处理,将网络请求的控制权从iOS系统转移到应用程序;应用程序使用链接字符串,对从请求消息中解析出的URL字符串进行匹配,并在匹配成功时,生成伪装响应数据,并根据该伪装响应数据进行显示,能够实现对网页广告或恶意网页的拦截,降低对系统资源和网络资源的占用,提高系统的运行速度以及用户访问网络的速度和流畅度,减少对设备电量的消耗。
附图说明
图1为本发明实施例中的iOS设备的结构示意图;
图2为本发明实施例中的一种基于iOS设备的网页拦截方法的流程图;
图3为本发明实施例中的应用程序使用链接字符串进行匹配的流程图;
图4为本发明实施例中的一种iOS设备的结构示意图。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
本发明实施例提供了一种基于iOS设备的网页拦截方法,应用于包括应用程序和系统组件的iOS设备中,如图1所示,应用程序在初始化阶段创建URL缓存类的子类对象,将该子类对象指定为URL缓存对象,该URL缓存对象为系统默认的用于缓存数据的对象,在网络请求发起时被访问。
例如,URL缓存类为NSURLCache类时,可以创建NSURLCache类的子类,即,FTURLCache类,并创建FTURLCache类的对象cache,将cache对象指定为系统默认的NSURLCache对象。由于SDK(Software Development Kit,软件开发工具包)中的网络请求通常会访问系统默认的NSURLCache对象,将cache对象指定为系统默认的NSURLCache对象后,SDK中的网络请求会访问cache对象,从而使得cache对象能够监听和处理网络请求。
应用程序启动后,可以根据用户输入的HTTP(HyperText TransferProtocol,超文本传输协议)地址生成第一请求消息,将该第一请求消息发送给系统组件,通过该系统组件发起网络请求;系统组件访问应用程序创建的URL缓存类的子类对象,例如cache对象;上述子类对象从系统组件获取第二请求消息,并向系统组件返回响应消息;系统组件根据该响应消息进行显示。通过创建和指定URL缓存类的子类对象,能够将网络请求的控制权从iOS系统转移到应用程序,通过应用程序对请求消息和网页数据进行处理,实现对网页广告和恶意网页的拦截。
基于上述iOS设备,本发明实施例中的网页拦截方法,如图2所示,包括以下步骤:
步骤201,应用程序启动,并执行初始化操作。
具体地,在iOS系统中,系统组件通常将缓存的数据存储到系统默认的NSURLCache对象。NSURLCache对象为全局共享的对象,SDK中的网络请求基本上都会访问NSURLCache对象,NSURLCache对象中的cachedResponseForReques方法将NSURLRequest对象映射到NSCachedURLResponse对象,并返回NSCachedURLResponse对象。其中,系统组件可以为UIWebView组件。
基于上述机制,本实施例可以定义NSURLCache类的子类,即,FTURLCache类,在FTURLCache类中重写cachedResponseForRequest方法,并在应用程序启动时,在AppDelegate入口处进入以下方法:
- (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions
在上述方法中,可以创建FTURLCache类的对象cache,通过调用setSharedURLCache方法,将创建的cache对象指定为系统默认的NSURLCache对象,添加到系统中。
由于SDK中的网络请求通常会访问系统默认的NSURLCache对象,将cache对象指定为系统默认的缓存对象后,SDK中的网络请求会访问cache对象,从而使得cache对象能够监听和处理网络请求。
步骤202,应用程序获取用户输入的HTTP地址,根据该HTTP地址生成第一请求消息,将该第一请求消息发送给系统组件,通过该系统组件向网站服务器发起网络请求。
具体地,应用程序可以获取用户输入的HTTP地址,将该HTTP地址作为第一请求消息中的URL字符串,生成第一请求消息,根据该第一请求消息调用系统组件中的方法,向网站服务器发起网络请求。
其中,系统组件为UIWebView组件,第一请求消息为NSURLRequest对象的实例,可以包括URL字符串、缓存方式信息和超时时间。
例如,应用程序获取到的HTTP地址为“www.aaa.com.cn”时,生成的第一请求消息为:
“<NSURLRequest url:http://www.aaa.com.cn/ cachePolicy:0NSTimeInterval:10000>”
其中,URL字符串为“http://www.aaa.com.cn/”,缓存方式信息为0,超时时间为10000。
应用程序调用UIWebView组件中的loadRequest方法,将上述第一请求消息作为loadRequest方法的参数,向网站服务器发起网络请求。
步骤203,应用程序监听系统组件发起的网络请求。
具体地,应用程序可以通过cache对象监听系统组件发起的网络请求。由于应用程序在初始化阶段将cache对象指定为系统默认的NSURLCache对象,且网络请求通常会访问系统默认的NSURLCache对象,因此,当系统组件发起网络请求时,该网络请求会访问cache对象,从而被应用程序监听到。
例如,网络组件中的loadRequest方法被调用,根据请求消息
“<NSURLRequest url:http://www.aaa.com.cn/ cachePolicy:0NSTimeInterval:10000>”,发起网络请求,访问系统默认的NSURLCache对象,即步骤201中创建的cache对象,应用程序监听到该网络请求。
步骤204,当应用程序监听到系统组件发起的网络请求时,应用程序从系统组件获取第二请求消息,对该第二请求消息进行解析,得到该第二请求消息所包含的URL字符串。
其中,第二请求消息可以与第一请求消息相同,也可以与第一请求消息不同;系统组件为UIWebView组件,当UIWebView组件中的loadRequest方法访问cache对象时,应用程序监听到UIWebView组件发起的网络请求,可以接收来自UIWebView组件的第二请求消息,调用cache对象中的cachedResponseForRequest方法,从该第二请求消息中解析出URL字符串。
例如,当应用程序从UIWebView组件获取到的第二请求消息为:
“<NSURLRequest url:http://www.aaa.com.cn/ cachePolicy:0NSTimeInterval:10000>”时,应用程序从该第二请求消息中解析出URL字符串“http://www.aaa.com.cn/”;
当应用程序从UIWebView组件获取到的第二请求消息为:
“<NSURLRequest url:http://gongyi.qq.com/logo.png/ cachePolicy:0 NSTimeInterval:10000>”时,应用程序从该第二请求消息中解析出URL字符串“http://gongyi.qq.com/logo.png/”。
步骤205,应用程序打开预置的链接匹配文件,将该链接匹配文件的起始位置作为当前位置。
具体地,应用程序可以通过调用open方法,打开预置的链接匹配文件,将该链接匹配文件的起始位置作为当前位置。其中,链接匹配文件可以包含一行或多行链接字符串,链接字符串可以为符合预设格式的字符串。
例如,应用程序可以调用open方法,打开预置的链接匹配文件filter.txt。
步骤206,应用程序自当前位置开始,从链接匹配文件中读取一行链接字符串,将当前位置更新为该链接字符串的末尾。
具体地,应用程序可以通过调用read方法,自当前位置开始,从链接匹配文件中读取一行链接字符串,将当前位置更新为该链接字符串的末尾。
例如,应用程序从链接匹配文件filter.txt中读取到的一行链接字符串为“http://*.ad.*/*”。
步骤207,应用程序对读取到的链接字符串和解析出的URL字符串进行匹配,如果匹配成功,则执行步骤208;如果匹配失败,则执行步骤209。
具体地,应用程序可以调用MatchUrl方法,对读取到的链接字符串和解析出的URL字符串进行匹配。
例如,当应用程序解析出的URL字符串为“http://www.aaa.com.cn/”时,应用程序对读取到的链接字符串“http://*.ad.*/*”和 “http://www.aaa.com.cn/”进行匹配;
当应用程序解析出的URL字符串为“http://gongyi.qq.com/logo.png/”时,应用程序对读取到的链接字符串“http://*.ad.*/*”和“http://gongyi.qq.com/logo.png/”进行匹配。
步骤208,应用程序生成伪装响应数据,将该伪装响应数据返回给系统组件,通过系统组件对该伪装响应数据进行显示处理,并返回步骤203。
具体他,应用程序可以根据本地资源文件封装一个伪装的Response(响应)句柄作为伪装响应数据返回给系统组件,该Response句柄用于伪装网站服务器返回的响应数据。其中,Response句柄为NSURLResponse对象的实例,可以包括头域、内容和缓存方式信息,系统组件为UIWebView组件,Response句柄中的内容为本地资源文件对应的数据内容。进一步地,应用程序可以获取与解析出的URL字符串对应的资源文件类型,根据该资源文件类型选择对应的本地资源文件,根据选择的本地资源文件生成伪装的Response句柄。
例如:应用程序生成并返回的伪装相应数据为伪装Response句柄:
“<NSURLResponse headerField:(NSDictionary)0x00128003 data:(NSData *)data cacheStoragePolicy:0>”
其中,头域为(NSDictionary)0x00128003,内容为(NSData *)data,缓存方式信息为0。
相应地,应用程序可以通过加载系统组件,显示与接收到的伪装响应数据对应的本地资源文件。
本实施例中,应用程序通过加载所述系统组件,可以显示像素为1*1的透明图片,也可以通过弹出窗口的方式,提示用户已过滤广告或恶意网页,还可以使用静态图片替换网络请求对应的动态图片、视频资源或音频资源。此外,应用程序还可以使用本地图片替换网络请求对应的源图片,使用本地视频资源替换网络请求对应的远程视频资源,使用本地音频资源替换网络请求对应的远程音频资源。
步骤209,应用程序判断当前位置是否为链接匹配文件的结束位置,如果是,则执行步骤210;否则,返回步骤206。
步骤210,应用程序判断本地缓存中是否存储有与解析出的URL字符串对应的资源文件,如果是,则执行步骤211;否则,执行步骤212。
具体地,应用程序可以调用cache对象的父类中的cachedResponseForRequest方法,即NSURLCache类中的cachedResponseForRequest方法,判断本地缓存中是否存储有与URL字符串对应的资源文件。
例如,解析出的URL字符串为“http://gongyi.qq.com/logo.png/”时,应用程序从本地缓存中搜索名称为logo的png图片。
步骤211,应用程序将本地缓存中与解析出的URL字符串对应的资源文件发送给系统组件,通过该系统组件显示该资源文件,并返回步骤203。
其中,系统组件为UIWebView组件。
例如,URL字符串为“http://gongyi.qq.com/logo.png/”时,应用程序将本地缓存中存储的名称为logo的png图片发送给UIWebView组件,UIWebView组件显示该图片。
步骤212,应用程序向网站服务器发送第二请求消息,接收网站服务器返回的响应消息,将该响应消息发送给系统组件,并返回步骤203。
具体地,应用程序可以调用cache对象的父类中的cachedResponseForRequest方法,即NSURLCache类中的cachedResponseForRequest方法,得到该cachedResponseForRequest方法返回的NSCachedURLResponse对象,即响应消息。应用程序将该响应消息返回给系统组件。
其中,网站服务器返回的响应消息可以为响应数据,响应数据可以包含资源类型、资源大小、资源名称和资源数据,该资源数据可以为二进制数据。
相应地,应用程序将接收到的响应数据返回给系统组件后,可以通过该系统组件显示相应的资源文件,系统组件为UIWebView组件。
例如,网站服务器返回的响应数据为“资源类型=png图片,资源大小=20KB,资源名称= logo,资源数据=1011110110001111010”时,应用程序通过UIWebView组件显示名称为logo的png图片。
此外,网站服务器返回的响应消息还可以为网页数据,该网页数据中可以包含一个或多个资源文件地址。
相应地,应用程序将接收到的网页数据返回给系统组件后,系统组件可以对接收到的网页数据进行解析,得到该网页数据中的资源文件地址,根据该资源文件地址生成相应的请求消息,并使用该请求消息发起网络请求。
具体地,系统组件可以使用的loadHTMLString方法,对接收到的网页数据进行解析,得到该网页数据中的资源文件地址。进一步地,系统组件根据解析得到的资源文件地址生成相应的请求消息,并使用该请求消息发起网络请求,访问系统默认的NSURLCache对象,即步骤201中创建的cache对象。
其中,系统组件生成的请求消息为NSURLRequest对象的实例,可以包括URL字符串、缓存方式信息和超时时间,系统组件为UIWebView组件。
例如,系统组件从接收到的网页数据中解析得到资源文件地址“http://gongyi.qq.com/logo.png/”,生成的请求消息为:
“<NSURLRequest url:http://gongyi.qq.com/logo.png/ cachePolicy:0 NSTimeInterval:10000>”。
相应地,应用程序通过cache对象监听到系统组件发起的网络请求后,获取来自该系统组件的第二请求消息,即系统组件根据资源文件地址生成的请求消息,并对该第二请求消息进行处理,即执行本发明实施例中的步骤204至步骤212的操作。
需要说明的是,本发明实施例中的步骤207中,应用程序使用读取到的链接字符串分别与解析出的URL字符串进行匹配的步骤,可细化为图3所示的流程,包括以下步骤:
步骤301,应用程序对读取到的链接字符串进行解析,得到有效字符串。
具体地,应用程序可以将链接字符串中的占位符去除,解析得到链接字符串中的有效字符串。
例如,读取到的链接字符串为“http://*.ad.*/*”,去除该链接字符串中的占位符后,得到有效字符串“ad”。
步骤302,应用程序提取有效字符串的首字符。
例如,有效字符串为“ad”时,提取有效字符串的首字符“a”。
步骤303,应用程序对当前遍历下标进行初始化。
本发明实施例中,应用程序可以将当前遍历下标初始化为0。
步骤304,应用程序根据当前遍历下标,从URL字符串中提取对应的字符。
其中,URL字符串中,不同的字符分别对应不同的遍历下标,第一个字符串对应的遍历下标可以为0。URL字符串可以为应用程序解析出的URL字符串。
例如:URL字符串为“http://www.aaa.com.cn/”,当前遍历下标为0时,提取到的与当前遍历下标对应的字符为“h”。
步骤305,应用程序判断提取到的字符是否为结束符,如果是,则确定读取到的链接字符串与URL字符串匹配失败;否则,执行步骤306。
例如,提取到的字符为“h”时,应用程序判断提取到的字符不是结束符。
步骤306,应用程序判断提取到的字符是否与有效字符串的首字符相同,如果相同,则执行步骤308;否则,执行步骤307。
例如,提取到的字符为“h”,有效字符串的首字符为“a”时,应用程序判断提取到的字符与有效字符串的首字符不同。
步骤307,应用程序对当前遍历下标进行更新,并返回步骤304。
本发明实施例中,应用程序可以将当前遍历下标加1。
步骤308,应用程序从当前遍历下标对应的字符开始,从URL字符串中截取与有效字符串长度相等的字符串。
例如,URL字符串为“http://www.aaa.com.cn/”,提取到的字符为第一个“a”,有效字符串的首字符为“a”,有效字符串的长度为2时,应用程序从URL字符串中截取的字符串为“aa”。
步骤309,应用程序判断截取的字符串是否与有效字符串相同,如果是,则确定读取到的链接字符串与URL字符串匹配成功;否则,返回步骤307。
例如,当截取的字符串为“aa”,有效字符串为“ad”时,应用程序判断截取的字符串与有效字符串不同。
需要说明的是,在本发明的其他实施方式中,应用程序还可以按照读取到的链接字符串中的通配符,将读取到的链接字符串拆分为多个子字符串,从拆分得到的子字符串中选取一个未被处理过的子字符串,判断选取的子字符串是否包含在解析出的URL字符串中,如果是,则确定所述读取到的链接字符串与解析出的URL字符串匹配成功;否则,将选取的子字符串标记为已被处理过,并判断上述拆分得到的子字符串是否均被处理过,如果是,则确定所述读取到的链接字符串与所述解析出的URL字符串匹配失败;否则,继续选取一个未被处理过的字符串,并判断选取的子字符串是否包含在解析出的URL字符串中,直到确认匹配成功或者确认根据读取到的链接字符串拆分得到的子字符串均被处理过。
此外,应用程序还可以获取与读取到的链接字符串对应的正则表达式,调用NSPredicate类,对该正则表达式和解析出的URL字符串进行匹配,将匹配结果作为读取到的链接字符串与解析出的URL字符串之间的匹配结果。
本发明实施例中,通过对系统默认的URL缓存对象进行子类化处理,将网络请求的控制权从iOS系统转移到应用程序;应用程序使用链接字符串,对从请求消息中解析出的URL字符串进行匹配,并在匹配成功时,生成伪装响应数据,并根据该伪装响应数据进行显示,能够实现对网页广告或恶意网页的拦截,降低对系统资源和网络资源的占用,提高系统的运行速度以及用户访问网络的速度和流畅度,减少对设备电量的消耗。
如图4所示,为本发明实施例中的一种iOS设备的结构示意图,包括应用程序400和系统组件500,其中,应用程序400包括:
初始化模块410,用于在应用程序400启动时,创建统一资源定位符缓存类的子类对象,将所述子类对象指定为统一资源定位符缓存对象,所述统一资源定位符缓存对象为所述系统组件发起网络请求时访问的对象;
请求模块420,用于获取用户输入的超文本传输协议地址,根据所述超文本传输协议地址生成第一请求消息,将所述第一请求消息发送给所述系统组件;
具体地,上述请求模块420,具体用于获取用户输入的超文本传输协议地址,将所述超文本传输协议地址作为所述第一请求消息中的统一资源定位符字符串,生成所述第一请求消息,根据所述第一请求消息调用所述系统组件中的方法,向所述网站服务器发起网络请求,所述第一请求消息包括统一资源定位符字符串、缓存方式信息和超时时间。
监听模块430,用于通过初始化模块410创建的所述子类对象,监听所述系统组件发起的网络请求;
解析模块440,用于在监听模块430监听到所述系统组件发起的网络请求时,从所述系统组件获取第二请求消息,对所述第二请求消息进行解析,得到所述第二请求消息所包含的统一资源定位符字符串;
匹配模块450,用于使用链接字符串对解析模块440解析出的统一资源定位符字符串进行匹配;
伪装模块460,用于在匹配模块450匹配成功时,生成伪装响应数据,将所述伪装响应数据返回给所述系统组件,通过所述系统组件对所述伪装响应数据进行显示处理;
第一响应模块470,用于在匹配模块450匹配失败时,向网站服务器发送所述第二请求消息,接收所述网站服务器返回的响应消息,将所述响应消息发送给所述系统组件。
其中,网站服务器返回的响应消息可以为响应数据,该响应数据包含资源类型、资源大小、资源名称和资源数据;
相应地,第一响应模块470,还用于通过所述系统组件,显示与所述响应数据对应的资源文件。
进一步地,上述iOS设备,还可以包括:
判断模块480,用于在匹配模块450匹配失败时,判断本地缓存中是否存储有与解析模块440解析出的统一资源定位符字符串对应的资源文件;
第二响应模块490,用于在判断模块480判断出所述本地缓存中存储有与所述解析出的统一资源定位符字符串对应的资源文件时,将所述本地缓存中与所述解析出的统一资源定位符字符串对应的资源文件发送给所述系统组件,通过所述系统组件显示所述资源文件;
相应地,上述第一响应模块470,具体用于在判断模块480判断出所述本地缓存中没有存储与所述解析出的统一资源定位符字符串对应的资源文件时,向所述网站服务器发送所述第二请求消息,接收所述网站服务器返回的响应消息,将所述响应消息发送给所述系统组件。
在上述iOS设备中,伪装模块460,可以包括:
生成子模块461,用于在匹配模块450匹配成功时,根据本地资源文件生成一个伪装的响应句柄,所述响应句柄用于伪装所述网站服务器返回的响应数据,所述响应句柄包括头域、内容和缓存方式信息;
具体地,上述生成子模块461,具体用于获取与所述解析出的统一资源定位符字符串对应的资源文件类型,根据所述资源文件类型,选择对应的本地资源文件,根据所述本地资源文件生成一个伪装的响应句柄;
发送子模块462,用于将生成子模块461生成的所述响应句柄作为所述伪装响应数据返回给所述系统组件;
显示子模块463,用于通过加载所述系统组件,显示与所述伪装响应数据对应的本地资源文件。
进一步地,匹配模块450,可以具体包括读取子模块451、匹配子模块452和判断子模块453,其中,
读取子模块451,用于从预置的链接匹配文件的起始位置开始,读取一行链接字符串,将当前位置设置为读取到的链接字符串的末尾;在被判断子模块453触发时,自当前位置开始,从所述链接匹配文件中读取一行链接字符串,将当前位置更新为读取到的链接字符串的末尾;
匹配子模块452,用于对读取子模块451读取到的链接字符串和所述解析模块解析出的统一资源定位符字符串进行匹配,如果所述读取到的链接字符串与所述解析出的统一资源定位符字符串匹配成功,则触发伪装模块460;如果所述读取到的链接字符串和所述解析出的统一资源定位符字符串匹配失败,则触发判断子模块453;
判断子模块453,用于判断当前位置是否为所述链接匹配文件的结束位置,如果是,则触发第一响应模块470;否则,触发读取子模块451。
具体地,匹配子模块452,可以具体用于执行以下操作:
B1、对所述读取到的链接字符串进行解析,得到有效字符串,提取所述有效字符串的首字符,并对当前遍历下标进行初始化;
B2、根据所述当前遍历下标,从所述解析出的统一资源定位符字符串中提取对应的字符,判断提取到的字符是否为结束符,如果是,则确定所述读取到的链接字符串与所述解析出的统一资源定位符字符串匹配失败,触发判断子模块453;否则,执行步骤B3;
B3、判断所述提取到的字符是否与所述有效字符串的首字符相同,如果是,则执行步骤B5;否则,执行步骤B4;
B4、对所述当前遍历下标进行更新,并返回步骤B2;
B5、从所述当前遍历下标对应的字符开始,从所述解析出的统一资源定位符字符串中截取与所述有效字符串长度相等的字符串,判断截取的字符串是否与所述有效字符串相同,如果不同,则返回步骤B4;如果相同,则确定所述读取到的链接字符串与所述解析出的统一资源定位符字符串匹配成功,触发所述伪装模块460。
其中,匹配子模块452对当前遍历下标进行初始化,具体为:匹配子模块452将所述当前遍历下标初始化为0;
匹配子模块452对所述当前遍历下标进行更新,具体为:匹配子模块452将所述当前遍历下标加1。
另外,上述匹配子模块452,还可以具体用于执行以下操作:
C1、按照所述读取到的链接字符串中的通配符,将所述读取到的链接字符串拆分为多个子字符串;
C2、从拆分得到的子字符串中选取一个未被处理过的子字符串;
C3、判断选取的子字符串是否包含在所述解析出的统一资源定位符字符串中,如果是,则确定所述读取到的链接字符串与所述解析出的统一资源定位符字符串匹配成功,触发所述伪装模块460;否则,将所述选取的子字符串标记为已被处理过,并执行步骤C4;
C4、判断上述拆分得到的子字符串是否均被处理过,如果是,则确定所述读取到的链接字符串与所述解析出的统一资源定位符字符串匹配失败,触发判断子模块453;否则,返回步骤C2。
此外,上述匹配子模块452,还可以具体用于获取与所述读取到的链接字符串对应的正则表达式,使用所述正则表达式与所述解析出的统一资源定位符字符串进行匹配。
本发明实施例中,通过对系统默认的URL缓存对象进行子类化处理,将网络请求的控制权从iOS系统转移到应用程序;应用程序使用链接字符串,对从请求消息中解析出的URL字符串进行匹配,并在匹配成功时,生成伪装响应数据,并根据该伪装响应数据进行显示,能够实现对网页广告或恶意网页的拦截,降低对系统资源和网络资源的占用,提高系统的运行速度以及用户访问网络的速度和流畅度,减少对设备电量的消耗。
结合本文中所公开的实施例描述的方法中的步骤可以直接用硬件、处理器执行的软件模块,或者二者的结合来实施。软件模块可以置于随机存储器(RAM)、内存、只读存储器(ROM)、电可编程ROM、电可擦除可编程ROM、寄存器、硬盘、可移动磁盘、CD-ROM、或技术领域内所公知的任意其它形式的存储介质中。
以上所述,仅为本发明的具体实施方式,但本发明的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本发明揭露的技术范围内,可轻易想到变化或替换,都应涵盖在本发明的保护范围之内。因此,本发明的保护范围应所述以权利要求的保护范围为准。
Claims (24)
1.一种基于iOS设备的网页拦截方法,应用于包括应用程序和系统组件的iOS设备中,其特征在于,所述方法包括以下步骤:
S1、所述应用程序启动,创建统一资源定位符缓存类的子类对象,将所述子类对象指定为统一资源定位符缓存对象,所述统一资源定位符缓存对象为所述系统组件发起网络请求时访问的对象;
S2、所述应用程序获取用户输入的超文本传输协议地址,根据所述超文本传输协议地址生成第一请求消息,将所述第一请求消息发送给所述系统组件;
S3、所述应用程序通过所述子类对象,监听所述系统组件发起的网络请求;
S4、当所述应用程序监听到所述系统组件发起的网络请求时,所述应用程序从所述系统组件获取第二请求消息,对所述第二请求消息进行解析,得到所述第二请求消息所包含的统一资源定位符字符串;
S5、所述应用程序使用链接字符串对解析出的统一资源定位符字符串进行匹配,如果匹配成功,则执行步骤S6;如果匹配失败,则执行步骤S7;
S6、所述应用程序生成伪装响应数据,将所述伪装响应数据返回给所述系统组件,通过所述系统组件对所述伪装响应数据进行显示处理,并返回步骤S3;
S7、所述应用程序向网站服务器发送所述第二请求消息,接收所述网站服务器返回的响应消息,将所述响应消息发送给所述系统组件,并返回步骤S3。
2.如权利要求1所述的方法,其特征在于,所述步骤S2,具体为:
所述应用程序获取用户输入的超文本传输协议地址,将所述超文本传输协议地址作为所述第一请求消息中的统一资源定位符字符串,生成所述第一请求消息,根据所述第一请求消息调用所述系统组件中的方法,向网站服务器发起网络请求,所述第一请求消息包括统一资源定位符字符串、缓存方式信息和超时时间。
3.如权利要求1所述的方法,其特征在于,所述步骤S5,具体包括:
A1、所述应用程序从预置的链接匹配文件的起始位置开始,读取一行链接字符串,将当前位置设置为读取到的链接字符串的末尾;
A2、所述应用程序对所述读取到的链接字符串和解析出的统一资源定位符字符串进行匹配,如果所述读取到的链接字符串与所述解析出的统一资源定位符字符串匹配成功,则执行步骤S6;如果所述读取到的链接字符串和所述解析出的统一资源定位符字符串匹配失败,则执行步骤A3;
A3、所述应用程序判断当前位置是否为所述链接匹配文件的结束位置,如果是,则执行步骤S7;否则,执行步骤A4;
A4、所述应用程序自当前位置开始,从所述链接匹配文件中读取一行链接字符串,将当前位置更新为读取到的链接字符串的末尾,并返回步骤A2。
4.如权利要求3所述的方法,其特征在于,所述步骤A2,具体包括:
B1、所述应用程序对所述读取到的链接字符串进行解析,得到有效字符串,提取所述有效字符串的首字符,并对当前遍历下标进行初始化;
B2、所述应用程序根据所述当前遍历下标,从所述解析出的统一资源定位符字符串中提取对应的字符,判断提取到的字符是否为结束符,如果是,则确定所述读取到的链接字符串与所述解析出的统一资源定位符字符串匹配失败,执行步骤A3;否则,执行步骤B3;
B3、所述应用程序判断所述提取到的字符是否与所述有效字符串的首字符相同,如果是,则执行步骤B5;否则,执行步骤B4;
B4、所述应用程序对所述当前遍历下标进行更新,并返回步骤B2;
B5、所述应用程序从所述当前遍历下标对应的字符开始,从所述解析出的统一资源定位符字符串中截取与所述有效字符串长度相等的字符串,判断截取的字符串是否与所述有效字符串相同,如果不同,则返回步骤B4;如果相同,则确定所述读取到的链接字符串与所述解析出的统一资源定位符字符串匹配成功,执行步骤S6。
5.如权利要求4所述的方法,其特征在于,所述应用程序对当前遍历下标进行初始化,具体为:
所述应用程序将当前遍历下标初始化为0;
所述应用程序对所述当前遍历下标进行更新,具体为:
所述应用程序将所述当前遍历下标加1。
6.如权利要求3所述的方法,其特征在于,所述步骤A2,具体包括:
C1、所述应用程序按照所述读取到的链接字符串中的通配符,将所述读取到的链接字符串拆分为多个子字符串;
C2、所述应用程序从拆分得到的子字符串中选取一个未被处理过的子字符串;
C3、所述应用程序判断选取的子字符串是否包含在所述解析出的统一资源定位符字符串中,如果是,则确定所述读取到的链接字符串与所述解析出的统一资源定位符字符串匹配成功,执行步骤S6;否则,将所述选取的子字符串标记为已被处理过,并执行步骤C4;
C4、所述应用程序判断所述拆分得到的子字符串是否均被处理过,如果是,则确定所述读取到的链接字符串与所述解析出的统一资源定位符字符串匹配失败,执行步骤A3;否则,返回步骤C2。
7.如权利要求3所述的方法,其特征在于,所述应用程序对所述读取到的链接字符串和解析出的统一资源定位符字符串进行匹配,具体为:
所述应用程序获取与所述读取到的链接字符串对应的正则表达式,使用所述正则表达式与所述解析出的统一资源定位符字符串进行匹配。
8.如权利要求1所述的方法,其特征在于,所述应用程序生成伪装响应数据,将所述伪装响应数据返回给所述系统组件,具体为:
所述应用程序根据本地资源文件生成一个伪装的响应句柄,将所述响应句柄作为所述伪装响应数据返回给所述系统组件,所述响应句柄用于伪装所述网站服务器返回的响应数据,所述响应句柄包括头域、内容和缓存方式信息;
所述应用程序通过所述系统组件对所述伪装响应数据进行显示处理,具体为:
所述应用程序通过加载所述系统组件,显示与所述伪装响应数据对应的本地资源文件。
9.如权利要求8所述的方法,其特征在于,所述应用程序根据本地资源文件生成一个伪装的响应句柄,具体为:
所述应用程序获取与所述解析出的统一资源定位符字符串对应的资源文件类型,根据所述资源文件类型,选择对应的本地资源文件,根据所述本地资源文件生成一个伪装的响应句柄。
10.如权利要求1所述的方法,其特征在于,所述步骤S7,具体包括:
当所述应用程序判断出本地缓存中没有存储与所述解析出的统一资源定位符字符串对应的资源文件时,所述应用程序向所述网站服务器发送所述第二请求消息,接收所述网站服务器返回的响应消息,将所述响应消息发送给所述系统组件;
所述步骤S7之前,还包括:
所述应用程序判断所述本地缓存中是否存储有与所述解析出的统一资源定位符字符串对应的资源文件。
11.如权利要求10所述的方法,其特征在于,所述应用程序判断所述本地缓存中是否存储有与所述解析出的统一资源定位符字符串对应的资源文件之后,还包括:
当所述应用程序判断出本地缓存中存储有与所述解析出的统一资源定位符字符串对应的资源文件时,所述应用程序将所述本地缓存中与所述解析出的统一资源定位符字符串对应的资源文件发送给所述系统组件,通过所述系统组件显示所述资源文件,并返回步骤S3。
12.如权利要求1所述的方法,其特征在于,所述网站服务器返回的响应消息为响应数据,所述响应数据包含资源类型、资源大小、资源名称和资源数据;
所述应用程序接收所述网站服务器返回的响应数据,将所述响应数据发送给所述系统组件之后,还包括:
所述应用程序通过所述系统组件,显示与所述响应数据对应的资源文件。
13.一种iOS设备,包括应用程序和系统组件,其特征在于,所述应用程序包括:
初始化模块,用于在所述应用程序启动时,创建统一资源定位符缓存类的子类对象,将所述子类对象指定为统一资源定位符缓存对象,所述统一资源定位符缓存对象为所述系统组件发起网络请求时访问的对象;
请求模块,用于获取用户输入的超文本传输协议地址,根据所述超文本传输协议地址生成第一请求消息,将所述第一请求消息发送给所述系统组件;
监听模块,用于通过所述初始化模块创建的所述子类对象,监听所述系统组件发起的网络请求;
解析模块,用于在所述监听模块监听到所述系统组件发起的网络请求时,从所述系统组件获取第二请求消息,对所述第二请求消息进行解析,得到所述第二请求消息所包含的统一资源定位符字符串;
匹配模块,用于使用链接字符串对所述解析模块解析出的统一资源定位符字符串进行匹配;
伪装模块,用于在所述匹配模块匹配成功时,生成伪装响应数据,将所述伪装响应数据返回给所述系统组件,通过所述系统组件对所述伪装响应数据进行显示处理;
第一响应模块,用于在所述匹配模块匹配失败时,向网站服务器发送所述第二请求消息,接收所述网站服务器返回的响应消息,将所述响应消息发送给所述系统组件。
14.如权利要求13所述的iOS设备,其特征在于,
所述请求模块,具体用于获取用户输入的超文本传输协议地址,将所述超文本传输协议地址作为所述第一请求消息中的统一资源定位符字符串,生成所述第一请求消息,根据所述第一请求消息调用所述系统组件中的方法,向网站服务器发起网络请求,所述第一请求消息包括统一资源定位符字符串、缓存方式信息和超时时间。
15.如权利要求13所述的iOS设备,其特征在于,所述匹配模块,具体包括读取子模块、匹配子模块和判断子模块,其中,
所述读取子模块,用于从预置的链接匹配文件的起始位置开始,读取一行链接字符串,将当前位置设置为读取到的链接字符串的末尾;在被所述判断子模块触发时,自当前位置开始,从所述链接匹配文件中读取一行链接字符串,将当前位置更新为读取到的链接字符串的末尾;
所述匹配子模块,用于对所述读取子模块读取到的链接字符串和所述解析模块解析出的统一资源定位符字符串进行匹配,如果所述读取到的链接字符串与所述解析出的统一资源定位符字符串匹配成功,则触发所述伪装模块;如果所述读取到的链接字符串和所述解析出的统一资源定位符字符串匹配失败,则触发所述判断子模块;
所述判断子模块,用于判断当前位置是否为所述链接匹配文件的结束位置,如果是,则触发所述第一响应模块;否则,触发所述读取子模块。
16.如权利要求15所述的iOS设备,其特征在于,所述匹配子模块,具体用于执行以下操作:
B1、对所述读取到的链接字符串进行解析,得到有效字符串,提取所述有效字符串的首字符,并对当前遍历下标进行初始化;
B2、根据所述当前遍历下标,从所述解析出的统一资源定位符字符串中提取对应的字符,判断提取到的字符是否为结束符,如果是,则确定所述读取到的链接字符串与所述解析出的统一资源定位符字符串匹配失败,触发所述判断子模块;否则,执行步骤B3;
B3、判断所述提取到的字符是否与所述有效字符串的首字符相同,如果是,则执行步骤B5;否则,执行步骤B4;
B4、对所述当前遍历下标进行更新,并返回步骤B2;
B5、从所述当前遍历下标对应的字符开始,从所述解析出的统一资源定位符字符串中截取与所述有效字符串长度相等的字符串,判断截取的字符串是否与所述有效字符串相同,如果不同,则返回步骤B4;如果相同,则确定所述读取到的链接字符串与所述解析出的统一资源定位符字符串匹配成功,触发所述伪装模块。
17.如权利要求16所述的iOS设备,其特征在于,所述匹配子模块对当前遍历下标进行初始化,具体为:
所述匹配子模块将当前遍历下标初始化为0;
所述匹配子模块对所述当前遍历下标进行更新,具体为:
所述匹配子模块将所述当前遍历下标加1。
18.如权利要求15所述的iOS设备,其特征在于,所述匹配子模块,具体用于执行以下操作:
C1、按照所述读取到的链接字符串中的通配符,将所述读取到的链接字符串拆分为多个子字符串;
C2、从拆分得到的子字符串中选取一个未被处理过的子字符串;
C3、判断选取的子字符串是否包含在所述解析出的统一资源定位符字符串中,如果是,则确定所述读取到的链接字符串与所述解析出的统一资源定位符字符串匹配成功,触发所述伪装模块;否则,将所述选取的子字符串标记为已被处理过,并执行步骤C4;
C4、判断根据所述拆分得到的子字符串是否均被处理过,如果是,则确定所述读取到的链接字符串与所述解析出的统一资源定位符字符串匹配失败,触发所述判断子模块;否则,返回步骤C2。
19.如权利要求15所述的iOS设备,其特征在于,所述匹配子模块,具体用于获取与所述读取到的链接字符串对应的正则表达式,使用所述正则表达式与所述解析出的统一资源定位符字符串进行匹配。
20.如权利要求13所述的iOS设备,其特征在于,所述伪装模块,包括:
生成子模块,用于在所述匹配模块匹配成功时,根据本地资源文件生成一个伪装的响应句柄,所述响应句柄用于伪装所述网站服务器返回的响应数据,所述响应句柄包括头域、内容和缓存方式信息;
发送子模块,用于将所述生成子模块生成的所述响应句柄作为所述伪装响应数据返回给所述系统组件;
显示子模块,用于通过加载所述系统组件,显示与所述伪装响应数据对应的本地资源文件。
21.如权利要求20所述的iOS设备,其特征在于,所述生成子模块,具体用于获取与所述解析出的统一资源定位符字符串对应的资源文件类型,根据所述资源文件类型,选择对应的本地资源文件,根据所述本地资源文件生成一个伪装的响应句柄。
22.如权利要求13所述的iOS设备,其特征在于,还包括:
判断模块,用于在所述匹配模块匹配失败时,判断本地缓存中是否存储有与所述解析出的统一资源定位符字符串对应的资源文件;
所述第一响应模块,具体用于在所述判断模块判断出所述本地缓存中没有存储与所述解析出的统一资源定位符字符串对应的资源文件时,向所述网站服务器发送所述第二请求消息,接收所述网站服务器返回的响应消息,将所述响应消息发送给所述系统组件。
23.如权利要求22所述的iOS设备,其特征在于,还包括:
第二响应模块,用于在所述判断模块判断出所述本地缓存中存储有与所述解析出的统一资源定位符字符串对应的资源文件时,将所述本地缓存中与所述解析出的统一资源定位符字符串对应的资源文件发送给所述系统组件,通过所述系统组件显示所述资源文件。
24.如权利要求13所述的iOS设备,其特征在于,所述网站服务器返回的响应消息为响应数据,所述响应数据包含资源类型、资源大小、资源名称和资源数据;
所述第一响应模块,还用于通过所述系统组件,显示与所述响应数据对应的资源文件。
Priority Applications (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201310338264.3A CN103366019B (zh) | 2013-08-06 | 2013-08-06 | 一种基于iOS设备的网页拦截方法和设备 |
US14/902,864 US9967314B2 (en) | 2013-08-06 | 2014-06-27 | IOS device based webpage blocking method and device |
PCT/CN2014/080931 WO2015018243A1 (zh) | 2013-08-06 | 2014-06-27 | 一种基于iOS设备的网页拦截方法和设备 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201310338264.3A CN103366019B (zh) | 2013-08-06 | 2013-08-06 | 一种基于iOS设备的网页拦截方法和设备 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN103366019A CN103366019A (zh) | 2013-10-23 |
CN103366019B true CN103366019B (zh) | 2016-09-28 |
Family
ID=49367360
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201310338264.3A Expired - Fee Related CN103366019B (zh) | 2013-08-06 | 2013-08-06 | 一种基于iOS设备的网页拦截方法和设备 |
Country Status (3)
Country | Link |
---|---|
US (1) | US9967314B2 (zh) |
CN (1) | CN103366019B (zh) |
WO (1) | WO2015018243A1 (zh) |
Families Citing this family (15)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103366019B (zh) * | 2013-08-06 | 2016-09-28 | 飞天诚信科技股份有限公司 | 一种基于iOS设备的网页拦截方法和设备 |
CN104572777B (zh) * | 2013-10-28 | 2019-05-14 | 腾讯科技(深圳)有限公司 | 基于UIWebView组件的网页加载方法及装置 |
CN103605690A (zh) * | 2013-11-04 | 2014-02-26 | 北京奇虎科技有限公司 | 一种即时通信中识别广告消息的装置和方法 |
CN103593466B (zh) * | 2013-11-26 | 2017-08-04 | 优视科技有限公司 | 网页加载方法及客户端和服务器 |
CN104113780A (zh) * | 2014-06-25 | 2014-10-22 | 小米科技有限责任公司 | 广告处理方法及装置 |
CN105808990B (zh) * | 2016-02-23 | 2019-01-18 | 平安科技(深圳)有限公司 | 基于ios系统控制url访问的方法和装置 |
CN106528148A (zh) * | 2016-11-04 | 2017-03-22 | 广东欧珀移动通信有限公司 | 界面跳转方法、界面跳转系统、及终端设备 |
CN109446449B (zh) * | 2018-10-09 | 2022-05-10 | 南京尚网网络科技有限公司 | 一种预先刷新资讯页面内容的方法及设备 |
CN109684114A (zh) * | 2019-01-02 | 2019-04-26 | 深圳乐信软件技术有限公司 | 基于iOS系统的消息分发方法、装置、终端和介质 |
CN110347949A (zh) * | 2019-06-20 | 2019-10-18 | 中信百信银行股份有限公司 | 网页加载方法、装置、电子设备及计算机可读存储介质 |
CN110417919B (zh) * | 2019-08-29 | 2021-10-29 | 网宿科技股份有限公司 | 一种流量劫持方法及装置 |
CN110716963B (zh) * | 2019-09-09 | 2023-09-01 | 平安证券股份有限公司 | 提供自适应配置的用户数据的方法及相关设备 |
CN112000313A (zh) * | 2020-08-03 | 2020-11-27 | 北京达佳互联信息技术有限公司 | 请求响应方法、装置、设备及存储介质 |
CN112948727B (zh) * | 2021-03-30 | 2024-05-14 | 平安科技(深圳)有限公司 | 基于WebView的数据注入方法、装置、设备及存储介质 |
CN114845168B (zh) * | 2022-05-07 | 2024-01-19 | 北斗星通智联科技有限责任公司 | 一种多媒体资源播放方法、装置、电子设备及介质 |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1983250A (zh) * | 2005-12-14 | 2007-06-20 | 王凤仙 | 过滤和/或者区别显示网络搜索结果中的恶意网页链接 |
CN101281521A (zh) * | 2007-04-05 | 2008-10-08 | 中国科学院自动化研究所 | 一种基于多分类器融合的敏感网页过滤方法及系统 |
CN101561803A (zh) * | 2008-04-14 | 2009-10-21 | 双扬科技股份有限公司 | 以手持通讯装置浏览网络信息的方法 |
CN102624703A (zh) * | 2011-12-31 | 2012-08-01 | 成都市华为赛门铁克科技有限公司 | 统一资源定位符url的过滤方法及装置 |
CN102789557A (zh) * | 2011-05-18 | 2012-11-21 | 腾讯科技(深圳)有限公司 | 在网页中实现网页安全功能的数据处理系统及方法 |
Family Cites Families (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101470731B (zh) * | 2007-12-26 | 2012-06-20 | 中国科学院自动化研究所 | 一种可个性化定制的网页过滤方法 |
CN101854335A (zh) * | 2009-03-30 | 2010-10-06 | 华为技术有限公司 | 一种过滤的方法、系统及网络设备 |
TW201037530A (en) | 2009-04-14 | 2010-10-16 | Acer Inc | Method for displaying a plugin frame in a web browser, computer readable medium, and computer program product |
CN102331985B (zh) * | 2010-07-12 | 2013-09-25 | 阿里巴巴集团控股有限公司 | 网页页面的分片嵌套缓存的处理方法和装置 |
CN102982169B (zh) * | 2012-12-12 | 2017-05-24 | 北京奇虎科技有限公司 | 用于隔离网页插件的浏览器和方法 |
CN103366019B (zh) * | 2013-08-06 | 2016-09-28 | 飞天诚信科技股份有限公司 | 一种基于iOS设备的网页拦截方法和设备 |
-
2013
- 2013-08-06 CN CN201310338264.3A patent/CN103366019B/zh not_active Expired - Fee Related
-
2014
- 2014-06-27 WO PCT/CN2014/080931 patent/WO2015018243A1/zh active Application Filing
- 2014-06-27 US US14/902,864 patent/US9967314B2/en active Active
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1983250A (zh) * | 2005-12-14 | 2007-06-20 | 王凤仙 | 过滤和/或者区别显示网络搜索结果中的恶意网页链接 |
CN101281521A (zh) * | 2007-04-05 | 2008-10-08 | 中国科学院自动化研究所 | 一种基于多分类器融合的敏感网页过滤方法及系统 |
CN101561803A (zh) * | 2008-04-14 | 2009-10-21 | 双扬科技股份有限公司 | 以手持通讯装置浏览网络信息的方法 |
CN102789557A (zh) * | 2011-05-18 | 2012-11-21 | 腾讯科技(深圳)有限公司 | 在网页中实现网页安全功能的数据处理系统及方法 |
CN102624703A (zh) * | 2011-12-31 | 2012-08-01 | 成都市华为赛门铁克科技有限公司 | 统一资源定位符url的过滤方法及装置 |
Non-Patent Citations (1)
Title |
---|
基于URL分析的Web访问监控系统的设计与实现;吴海平;《中国优秀硕士学位论文全文数据库 信息科技辑》;20120315(第03期);全文 * |
Also Published As
Publication number | Publication date |
---|---|
US9967314B2 (en) | 2018-05-08 |
US20160191606A1 (en) | 2016-06-30 |
WO2015018243A1 (zh) | 2015-02-12 |
CN103366019A (zh) | 2013-10-23 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN103366019B (zh) | 一种基于iOS设备的网页拦截方法和设备 | |
CN104021172B (zh) | 广告过滤方法及广告过滤装置 | |
CN102594813B (zh) | 多账号登录方法及装置 | |
CN104063460B (zh) | 一种在浏览器中加载网页的方法和装置 | |
Cohen | PyFlag–An advanced network forensic framework | |
US9166949B2 (en) | Method and system of managing a captive portal with a router | |
CN104767775B (zh) | 网页应用消息推送方法及系统 | |
CN104541262B (zh) | 用于富因特网应用的透明网络内适配的系统和方法 | |
CN101763357B (zh) | 一种用于浏览器加载互联网资源的方法及系统 | |
US20090258637A1 (en) | Method for user identity tracking | |
CN101178717A (zh) | 一种对网页进行适配处理的方法及网页适配装置 | |
CN103118082B (zh) | 附加信息植入方法、设备及系统 | |
JP2000194612A (ja) | 電子デ―タの内容を無線装置用に変換する方法およびシステム | |
CN102868719A (zh) | 一种基于缓存的网络访问方法和服务器 | |
CN104040995B (zh) | 多媒体重定向方法以及多媒体服务器以及计算机系统 | |
CN103561036A (zh) | 白名单上网环境下的请求拦截方法及装置 | |
CN109862130B (zh) | 一种访问IPv4外链方法、装置、设备及计算机介质 | |
CN104426985A (zh) | 显示网页的方法、装置及系统 | |
CN108629032A (zh) | 一种基于延时加载的页面快速响应方法及装置 | |
WO2018133772A1 (zh) | 网页资源的获取方法和装置、存储介质、电子装置 | |
CN105393247A (zh) | 一种网页优化的设备及方法 | |
CN103379125A (zh) | 基于社交网络的多屏互动方法 | |
CN101136834A (zh) | 一种基于ssl vpn的链接改写方法和设备 | |
CN105653526A (zh) | 页面访问方法和装置 | |
CN106202549A (zh) | 一种图片加载的方法及装置 |
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 |
Granted publication date: 20160928 |
|
CF01 | Termination of patent right due to non-payment of annual fee |