CN101510881A - 一种网页提供方法及装置 - Google Patents
一种网页提供方法及装置 Download PDFInfo
- Publication number
- CN101510881A CN101510881A CN 200910080965 CN200910080965A CN101510881A CN 101510881 A CN101510881 A CN 101510881A CN 200910080965 CN200910080965 CN 200910080965 CN 200910080965 A CN200910080965 A CN 200910080965A CN 101510881 A CN101510881 A CN 101510881A
- Authority
- CN
- China
- Prior art keywords
- controller
- video data
- request address
- message
- log
- 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.)
- Granted
Links
Images
Landscapes
- Information Transfer Between Computers (AREA)
Abstract
本发明提供一种网页提供方法及装置。该方法包括,前端控制器获取用户提交的统一资源定位符URL请求地址,并确定所述URL请求地址是否符合预置URL规则;与所述URL请求地址相对应的过滤器对所述登录信息进行权限验证;如果所述URL请求地址符合预置URL规则,且所述登录信息通过所述权限验证,则与所述URL请求地址相对应的子类控制器提取显示数据,子类控制器并将所述显示数据发送给父类控制器;所述父类控制器根据所述显示数据输出页面。该方法将权限验证和输出页面从子类控制器中分离,减少了代码的重复,提高了网站开发效率。
Description
技术领域
本发明涉及计算机应用技术领域,尤其涉及一种网页提供方法及装置。
背景技术
近年来,随着网络技术的发展和互联网用户的快速增长,各种商业网站和企业网站等大量涌现,以向用户提供信息。在网站网页的制作过程中,通常需要使用某种框架结构来快速创建Web应用程序,以便于在用户发出对某网页的访问请求时,对用户的请求信息进行处理,根据用户信息向用户提供相应的页面。其中,框架结构是指由一套代码所构成的统一的开发标准,遵循此标准可以提高工作效率,提高维护性和扩展性,便于代码统一化。
现有技术中,常用的框架结构是Cakephp,对于使用该框架结构开发的网站,在向用户提供网页时,在接收到用户的访问请求后,由前端控制器判断用户提交的URL(Uniform Resource Locator,统一资源定位符)请求地址是否符合预置的URL规则,如果符合,则将用户提交的登录信息交由与该URL请求地址对应的子类控制器,由对应的子类控制器进行一系列的权限验证,提取显示数据、和输出页面。其中权限验证,即验证用户是否具有访问所请求页面的权限,若通过验证,就根据用户的URL请求地址去提取相应的显示数据,然后根据这些显示数据来输出页面。
现有技术中,每个子类控制器都要进行上述一系列的处理,处理过程相当庞杂,而在权限验证和输出页面时,各子类控制器中会存在相同的部分处理过程,例如,权限验证是在每个子类控制器内根据自己的权限判断方法,采用if字段来进行验证,例如if(userrole=="manager"){xxxx业务逻辑},用户的请求在各子类控制器中都需要经过这些代码验证,因此各子类控制器中会存在大量的重复性代码。在对网站进行维护、修改或扩展时,需要对各部分进行重新调整,甚至重新编写,而大量重复性代码的存在,直接制约了网站开发的效率,增加了网站的维护成本。
发明内容
本发明实施例提供一种网页提供方法及装置,能够减少重复性代码的使用,以提高网站的开发效率。
为了解决上述技术问题,本发明实施例采用了以下技术方案:
一种网页提供方法,包括:
前端控制器获取用户提交的统一资源定位符URL请求地址,并确定所述URL请求地址是否符合预置URL规则;
与所述URL请求地址相对应的过滤器对所述登录信息进行权限验证;
如果所述URL请求地址符合预置URL规则,且所述登录信息通过所述权限验证,则与所述URL请求地址相对应的子类控制器提取显示数据,并将所述显示数据发送给父类控制器;
所述父类控制器根据所述显示数据输出页面。
进一步,在所述过滤器进行权限验证之前,还包括:
所述前端控制器对所述登录信息进行封装,并将封装后的登录信息发送到所述与所述URL请求地址相对应的过滤器;
所述与所述URL请求地址相对应的过滤器对所述登录信息进行权限验证具体为,所述与所述URL请求地址相对应的过滤器对所述封装后的登录信息进行权限验证。
进一步,所述与所述URL请求地址相对应的过滤器对所述登录信息进行权限验证包括:
查找预设的权限配置项,所述权限配置项包括所述登录信息和用户身份的对应关系,以及所述用户身份与所述子类控制器提取显示数据所需权限的对应关系;
如果所述登录信息对应的所述用户身份满足所述子类控制器提取显示数据所需的权限,则所述登录信息通过权限验证。
进一步,在所述子类控制器提取显示数据之前,还包括:
所述与所述URL请求地址相对应的过滤器对所述登录信息进行输入验证,所述输入验证具体为,
对预先设置的代码的标签进行替换,生成验证代码;
根据所述验证代码对所述登录信息进行输入验证。
进一步,在所述子类控制器将所述显示数据发送给所述父类控制器之前,还包括:
所述子类控制器将所述显示数据进行封装;
所述子类控制器将所述显示数据发送至所述父类控制器具体为,所述子类控制器将封装的所述显示数据发送至所述父类控制器。
进一步,在所述子类控制器将所述封装的显示数据发送至父类控制器之前,还包括:
所述子类控制器将封装的所述显示数据分配至所述与所述URL请求地址相对应的过滤器;
所述与所述URL请求地址相对应的过滤器对所述封装的显示数据进行变量替换,然后将变量替换后的封装的显示数据发送至所述父类控制器。
进一步,所述父类控制器根据所述显示数据输出页面包括:
所述父类控制器根据所述URL请求地址的格式参数,将所述封装的显示数据转换为与所述格式参数对应的格式;
所述父类控制器按照所述格式输出页面。
本发明实施例还提供了一种网页提供装置,包括:
前端控制器,用于获取用户提交的统一资源定位符URL请求地址,并判断所述URL请求地址是否符合预置URL规则;
与所述URL请求地址相对应的过滤器,用于对所述登录信息进行权限验证;
与所述URL请求地址相对应的子类控制器,用于当所述URL请求地址符合预置URL规则,且所述登录信息通过所述权限验证时,提取显示数据,并将所述显示数据发送给所述父类控制器;
父类控制器,用于根据所述显示数据输出页面。
进一步,所述前端控制器还包括:
信息封装模块,用于在权限验证之前,对所述登录信息进行封装,并将封装后的登录信息分配到与所述URL请求地址相对应的过滤器;
所述与所述URL请求地址相对应的过滤器,还用于对所述封装的登录信息进行权限验证。
进一步,所述与所述URL请求地址相对应的过滤器包括权限验证模块,所述权限验证模块包括:
查找单元,用于查找预设的权限配置项,所述权限配置项包括所述登录信息和用户身份的对应关系,以及所述用户身份与所述子类控制器提取显示数据所需权限的对应关系;
确定单元,用于如果所述登录信息对应的所述用户身份满足所述子类控制器提取显示数据所需的权限,则所述登录信息通过权限验证。
进一步,所述与所述URL请求地址相对应的过滤器还包括:
输入验证模块,用于在所述子类控制器提取显示数据之前,对所述用户提交的登录信息进行输入验证;
所述输入验证模块包括,
生成单元,用于对预先设置的代码的标签进行替换,生成验证代码;
输入验证单元,用于根据所述验证代码对所述登录信息进行输入验证。
进一步,所述子类控制器还包括:
数据封装模块,用于将所述显示数据进行封装;
发送模块,用于将封装的所述显示数据发送至所述父类控制器。
进一步,所述发送模块,还用于在将所述封装的显示数据发送至所述父类控制器之前,将封装的所述显示数据分配至所述与所述URL请求地址相对应的过滤器;
所述与所述URL请求地址相对应的过滤器,还用于对所述封装的显示数据进行变量替换,然后再将变量替换后的封装的显示数据发送至所述父类控制器。
进一步,所述父类控制器包括:
转换模块,用于根据所述URL请求地址的格式参数,将所述封装的显示数据转换为与所述格式参数对应的格式;
输出模块,用于按照所述格式输出页面。
本发明实施例通过将权限验证和输出页面从子类控制器中分离,由过滤器进行验证,将各子类控制器中相同部分进行统一处理,由父类控制器进行统一处理输出页面,减少了重复代码,并且在单独对过滤器、或子类控制器、或父类控制器进行修改或扩展时,不影响到其它部分的改动,便于维护,提高了网站的开发效率。
附图说明
图1是本发明实施例一种网页提供方法流程图;
图2是本发明实施例一种网页提供方法中前端控制器的处理方法流程图;
图3是本发明实施例一种网页提供方法中过滤器进行权限验证的方法流程图;
图4是本发明实施例一种网页提供方法中过滤器的处理方法流程图;
图5是本发明实施例一种网页提供方法中子类控制器的处理方法流程图;
图6是本发明实施例一种网页提供方法中父类控制器的处理方法流程图;
图7是本发明实施例一种网页提供装置的结构框图;
图8是本发明实施例一种网页提供装置中前端控制器的结构框图;
图9是本发明实施例一种网页提供装置中过滤器的结构框图;
图10是本发明实施例一种网页提供装置中另一种过滤器的结构框图;
图11是本发明实施例一种网页提供装置中子类控制器的结构框图;
图12是本发明实施例一种网页提供装置中父类控制器的结构框图。
具体实施方式
为了使本领域技术人员能进一步了解本发明的特征及技术内容,请参阅以下有关本发明的详细说明与附图,附图仅提供参考与说明,并非用来限制本发明。
下面结合附图和实施例,对本发明的技术方案进行描述。
参照图1,为本发明实施例一种网页提供方法流程图。该方法可以包括:
步骤101,前端控制器获取用户提交的统一资源定位符URL请求地址,并确定所述URL请求地址是否符合预置URL规则;
步骤102,与所述URL请求地址相对应的过滤器对所述登录信息进行权限验证;
步骤103,如果所述URL请求地址符合预置URL规则,且所述登录信息通过所述权限验证,则与所述URL请求地址相对应的子类控制器提取显示数据,子类控制器并将所述显示数据发送给父类控制器;
步骤104,所述父类控制器根据所述显示数据输出页面。
首先由前端控制器判断用户提交的URL请求地址是否符合预置URL规则;其中,URL请求地址就是用户提交的ie地址信息,URL规则为http://域名/类名/方法名/参数1/参数2/....../参数n,判断是否符合预置URL规则,即当用户提交的URL请求地址中,类名不存在或者方法名不在类名所对应的类中时,即为用户提交的URL不存在,则向用户提供错误网页,也就是访问不存在的显示页面。如果用户提交的URL符合预置的URL规则,则根据类名和方法名将用户提交的登录信息交由对应的过滤器,然后,由相应的过滤器对用户提交的登录信息进行权限验证;如果登录信息通过权限验证,则子类控制器提取需要显示的数据并交由父类控制器根据显示数据输出页面。本发明实施例中前端控制器可以与现有技术中相同,将现有技术中权限验证的过程在各相应的过滤器中进行统一处理,子类控制器只负责提取需要显示的数据,根据显示数据输出页面统一交由父类控制器进行。各部分的具体实施通过以下实施例进行详细说明。
本发明实施例通过将权限验证从子类控制器中分离,由过滤器进行验证,将各子类控制器中相同部分进行统一处理,减少了子类控制器中的代码重复,而且各子类控制器提取的显示数据均交由父类控制器进行统一处理输出页面,也减少了子类控制器中的重复代码,而且在单独对过滤器、或子类控制器、或父类控制器进行修改或扩展时,不影响到其它部分的改动,便于维护。
以下对本发明实施例提供网页的整个流程在不同实施主体中的处理进行详细说明。
参照图2,为本发明实施例一种网页提供方法中前端控制器的处理方法流程图。该方法可以包括:
步骤201,前端控制器获取用户提交的URL请求地址,并确定符合预置URL规则;
在本发明实施例中采用的URL规则也可以为http://域名/类名/方法名/方法参数1/方法参数2....../方法参数n,这种URL规则便于后期维护,可以直接对应URL请求地址找到相应的子类控制器等,便于新的开发人员加入和开发方式的统一化。更有利的一点是,因为这种方式不用“?传”递参数,利于搜索引擎抓取URL,它是搜索引擎友好的,原先的带“?”的URL不利于搜索引擎抓取。例如:
http://bbs.xoyo.com/frame.php?frameon=yes&referer=http%3A//bbs.xoyo.com/index.php%3Fgid%3D6324
步骤202,所述前端控制器对所述登录信息进行封装;
本步骤中进行封装的数据还可以包括cookie参数、files参数等,所谓的封装过程即将这些数据信息等作为共享数据,存放在Request Context(请求内容类)中。
步骤203,所述前端控制器将封装的所述登录信息分配到所述与所述URL请求地址对应的过滤器。
该对应的过滤器也可以是与URL请求地址中的类名和方法名相对应。在本步骤如果不能找到对应的过滤器,则可以直接将该封装后的登录信息发送到对应的子类控制器中进行业务逻辑处理,以提取显示数据等。
在本实施例中,前端控制器通过对用户的登录信息进行封装,便于对登录信息的统一验证。例如,在现有技术中未采用封装过程时,在验证过程中需要通过$_GET,$_POST等全局变量来获取的,在本发明实施例中,封装后,统一通过Request Context来获取,这样如果对用户的登录信息做统一处理时,只需要对Request Context作处理即可。
在对应的过滤器接收到封装的用户的登录信息后,进行以下处理:
参照图3,为本发明实施例一种网页提供方法中过滤器进行权限验证的方法流程图。该方法可以采取以下步骤:
步骤301,查找预设的权限配置项,所述权限配置项包括所述登录信息和用户身份的对应关系,以及所述用户身份与所述子类控制器提取显示数据所需权限的对应关系;
不同的用户也即登录信息对应有不同的身份,如普通访问者或管理员等,而不同的身份会对应获取不同显示页面的权限,这些显示页面是由各子类控制器执行各自的代码来提取不同的显示数据最终形成的,也即该权限为该子类控制器执行代码时所需的权限,比如管理员权限等。因此,在本实施例中,将权限配置项,也就是用户登录信息所对应的用户身份,以及用户身份对应的权限预先存储在过滤器或其它模块中,在用户登录时,根据登录信息查找该权限配置项。
步骤302,如果所述登录信息对应的所述用户身份满足所述子类控制器提取显示数据所需的权限,则所述登录信息通过权限验证。
对用户登录时提交的登录信息,过滤器或其它模块中会存储有该登录信息所对应的权限,在本步骤中可以直接根据用户的登录信息进行查询,来确定是否通过权限验证。
本发明实施例通过预设的权限配置项,即可直接完成权限验证,进而子类控制器只根据是否通过验证来执行代码进行相应的业务逻辑处理,而不需要在每个子类控制器中通过大量的if字段来对用户的权限进行一系列的筛选判断,减少了权限验证时重复性代码的使用,提高了网站的开发效率,而且,在进行各子类控制器权限的修改或扩展时,不需要重新编写各子类控制器的大量判断代码,便于对权限的管理、扩展和维护。
而且采用过滤器来进行权限验证,将各子类控制器中相同部分进行统一处理,减少了子类控制器中的代码重复,子类控制器只用来进行业务逻辑处理,提取显示数据,这样对权限验证和提取数据进行分工后,便于对各部分操作的维护和扩展,在进行修改时,比如对权限验证部分进行修改,不再需要将各子类控制器中的代码进行修改或重新编写,而只是对过滤器中的部分设置进行修改即可,大大减少了工作量。
参照图4,为本发明实施例一种网页提供方法中过滤器的处理方法流程图。该方法可以包括:
步骤401,所述过滤器对封装的用户登录信息进行权限验证;
该权限验证过程与前述步骤301~302类似,此处不再赘述。
步骤402,所述过滤器对封装的用户登录信息进行输入验证。
在本步骤中输入验证具体又可以包括:
a.对预先设置的代码标签进行替换,生成验证代码;
b.根据所述验证代码在客户端和/或服务器端对所述登录信息进行验证。
在现有技术中,每个子类控制器对用户的登录信息进行输入验证时,通常要根据两套验证代码来验证,即javascript代码和php代码,javascript代码主要用在客户端检验错误,php代码主要用在服务器端检查错误,在客户端检查错的好处是直接给用户提示,在服务器端检查错误的好处是,如果一些非法用户绕过客户端检查,那么服务器检查错误就可以解决非法数据的入侵。但是每套验证代码中有很多重复性代码,而且每个子类控制器中设置两套验证代码更加大了代码的重复率,严重制约了网站的开发效率和维护。
在本发明实施例中,步骤a采用模板技术将html代码与php代码分离,例如stmarty模板技术,并将原来html代码中的标签进行替换,就可自动生成验证代码javascript代码和php代码。进而通过步骤b进行验证。例如:
<!DOCTYPE html PUBLIC"-//W3C//DTD HTML4.01Transitional//EN""http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<meta http-equiv="Content-Type"content="text/html;charset=UTF-8">
<script
src="http://cms.xoyo.com/application/cmsmanage/view/js/validate.js"></script>
<title>Insert title here</title>
</head>
<body>
{form action="http://cms.xoyo.com/test/test"method="post"name=′from1′}
{input name=′a1′type="text"check="email"value=123msg="email格式错误"}
{input name=′a2′type="text"check="StringLength"args="1,2"value=456msg="长度1-2个字符"}
{textarea name=′a3′check="StringLength"args="1,20"msg="长度1-20个字符"}{/textarea}
{input name=′a4′type="text"check="StringLength"args="1,6"value=456msg="长度1-6个字符"}
{inputname=′a5′type="text"check="StringLength;equal"args="1,6;a4"
value=456msg="长度1-6个字符;字段输入不相同"}
{input type=′submit′value=′submit′}
{/form}
</body>
</html>
使用“{}”代替原来html标签中的“<>”这样就可以自动生成检验错误的javascript代码和php代码。
在本实施例通过采用上述处理过程大大降低了代码的重复率,其中,步骤401和步骤402的顺序可以进行调换,两种验证并不互相影响,如果任意不能通过可以直接向用户提供错误网页,也就是访问不存在的显示页面;当然,本实施例是较佳实施例,在过滤器的验证过程中,可以只进行其中一种验证,也可以采用现有技术中的常用方法进行权限验证。在两种验证都通过之后,就由与URL请求地址中类名和方法名相应的子类控制器进行后续处理,如图5所示。
参照图5,为本发明实施例一种网页提供方法中子类控制器的处理方法流程图。该方法可以包括:
步骤501,所述子类控制器根据用户提交的URL请求地址提取显示数据;
本步骤中子类控制器可以调用URL请求地址中类中的方法提取需显示给用户的数据。此步骤与现有技术中相同,此处不再赘述。
步骤502,所述子类控制器将所述显示数据进行封装;
所谓封装即将需要显示的数据存放在Response Context(反馈内容类)中。
步骤503,所述子类控制器将封装的所述显示数据发送至父类控制器。
在本发明实施例中将所需的显示数据进行封装,使显示数据存在统一的位置,可以方便把控整体的流程,可以根据需求对显示数据做统一的处理。该封装过程使得显示数据与子类控制器的业务逻辑相分离,使耦合降低,由父类控制器来进行对显示数据的处理和输出时,各控制层不会发生变化。
在本发明的另一实施例中,在所述子类控制器将所述封装的显示数据发送至父类控制器之前,还包括:将封装的所述显示数据分配至与所述URL请求地址对应的过滤器,通过所述与所述URL请求地址对应的过滤器对所述封装的显示数据进行变量替换,然后再将变量替换后的封装的显示数据发送至所述父类控制器。
该变量替换,比如全站的“金山”两个字需要用红色显示,在现有技术中由各子类控制器单独进行变量替换,同样会出现代码的重复问题,在本发明实施例中,可以由前述过滤器统一进行变量替换,只需要写一次过滤器,配置过滤器使其对应子类控制器即可,减少了代码的重复率。该过滤器也可以是另外设置的其它过滤器。
在使用前述过滤器进行变量替换时,可以在过滤器中设置入口函数和出口函数,其中,入口函数对应前述验证过程,出口函数对应变量替换过程,只要该过滤器调用相应函数进行相应处理即可实现。
在将封装后的显示数据或变量替换后的封装的显示数据输入至父类控制器后,父类控制器进行以下处理。
参照图6,为本发明实施例一种网页提供方法中父类控制器的处理方法流程图。该方法可以包括:
步骤601,所述父类控制器根据所述URL请求地址的格式参数,将所述封装的显示数据转换为与所述格式参数对应的格式;其中格式参数可以是根据预设的URL请求规则进行设定。
步骤602,所述父类控制器按照所述格式输出页面。
在现有技术中,由各子类控制器根据用户的URL请求地址中的相关参数来决定输出普通html页面还是xml或json数据格式,所以就需要在每个子类控制器中通过两套代码来输出不同格式的页面,或者是对于同一份显示数据需要不同的子类控制器来输出不同格式的页面,代码重复率高而且维护成本高。
在本发明实施例中,通过将各子类控制器的显示数据交由父类控制器进行统一控制,这里使用的是模版设计模式,即做到一次编写多次使用,只需要写一份业务逻辑,而输出可以根据不同的参数随意变换,从而减少了代码的重复。
以上方法实施例可以进行组合,并不限定于对各实施主体同时采用上述方法。
参照图7,为本发明实施例一种网页提供装置的结构框图。
该装置可以包括前端控制器701、与所述URL请求地址相对应的过滤器702、与所述URL请求地址相对应的子类控制器703和父类控制器704。
其中,前端控制器701,用于获取用户提交的统一资源定位符URL请求地址,并判断所述URL请求地址是否符合预置URL规则;与所述URL请求地址相对应的过滤器702,用于对用户提交的登录信息进行权限验证;与所述URL请求地址相对应的子类控制器703,用于当所述用户提交的URL请求地址符合预置URL规则,且所述用户提交的登录信息通过所述权限验证时,提取显示数据,并将所述显示数据发送给所述父类控制器704;父类控制器704,用于根据所述显示数据输出页面。可见,在本发明实施例中子类控制器和过滤器各有多个,在进行相关处理时由对应的子类控制器和过滤器来进行,该对应可以是与URL请求地址的类名和方法名相对应。
以下对该装置中的各部分进行说明。
参照图8,为本发明实施例一种网页提供装置中前端控制器的结构框图。
本实施例中前端控制器除了判断模块801,用于获取用户提交的URL请求地址并确定是否符合预置URL规则之外,还可以包括信息封装模块802。
信息封装模块802,用于在进行所述权限验证之前,对所述登录信息进行封装,并将封装的所述登录信息分配到与所述URL请求地址相对应的过滤器;所述与所述URL请求地址相对应的过滤器,还用于对所述封装的登录信息进行权限验证。
参照图9,为本发明实施例一种网页提供装置中过滤器的结构框图。
该与所述URL请求地址相对应的过滤器可以包括权限验证模块901,所述权限验证模块901包括:
查找单元911,用于查找预设的权限配置项,所述权限配置项包括所述登录信息和用户身份的对应关系,以及所述用户身份与所述子类控制器提取显示数据所需权限的对应关系;确定单元921,用于如果所述登录信息对应的所述用户身份满足所述子类控制器提取显示数据所需的权限,则所述登录信息通过权限验证。
参照图10,为本发明实施例一种网页提供装置中另一种过滤器的结构框图。
该与所述URL请求地址相对应的过滤器可以包括权限验证模块1001和输入验证模块1002,其中,权限验证模块1001可以与前述实施例中的权限验证模块901相同。
输入验证模块1002,用于对所述用户提交的登录信息进行输入验证,在所述输入验证通过后,再由所述子类控制器提取显示数据。
输入验证模块1002还可以包括生成单元1012和输入验证单元1022。
生成单元1012,用于对预先设置的代码标签进行替换,生成验证代码;输入验证单元1022,用于根据所述验证代码对所述用户提交的登录信息进行验证。
参照图11,为本发明实施例一种网页提供装置中子类控制器的结构框图。
本实施例中,该与所述URL请求地址相对应的子类控制器除了包括数据提取模块1101,用于提取显示数据,并将所述显示数据发送至父类控制器之外,还可以包括数据封装模块1102和发送模块1103。
数据封装模块1102,用于将所述显示数据进行封装;发送模块1103,用于将封装的所述显示数据发送至父类控制器。
在本发明的另一实施例中,该发送模块1103,还用于在将所述封装的显示数据发送至父类控制器之前,将封装的所述显示数据分配至与所述URL请求地址对应的过滤器;所述与所述URL请求地址相对应的过滤器,还用于对所述封装的显示数据进行变量替换,然后再将变量替换后的封装的显示数据发送至所述父类控制器。
参照图12,为本发明实施例一种网页提供装置中父类控制器的结构框图。
该父类控制器包括可以转换模块1201和输出模块1202。
转换模块1201,用于根据所述URL请求地址的格式参数,将所述封装的显示数据转换为与所述格式参数对应的格式;输出模块1202,用于按照所述格式输出页面。
以上装置实施例的具体实施请参照前述方法实施例,此处不再赘述。上述装置实施例可以进行组合,并不限定于对各实施主体同时采用上述结构。
以上所述的本发明实施方式,并不构成对本发明保护范围的限定。任何在本发明的精神和原则之内所作的修改、等同替换和改进等,均应包含在本发明的权利要求保护范围之内。
Claims (14)
1、一种网页提供方法,其特征在于,包括:
前端控制器获取用户提交的统一资源定位符URL请求地址,并确定所述URL请求地址是否符合预置URL规则;
与所述URL请求地址相对应的过滤器对所述登录信息进行权限验证;
如果所述URL请求地址符合预置URL规则,且所述登录信息通过所述权限验证,则与所述URL请求地址相对应的子类控制器提取显示数据,并将所述显示数据发送给父类控制器;
所述父类控制器根据所述显示数据输出页面。
2、根据权利要求1所述的方法,其特征在于,在所述过滤器进行权限验证之前,还包括:
所述前端控制器对所述登录信息进行封装,并将封装后的登录信息发送到所述与所述URL请求地址相对应的过滤器;
所述与所述URL请求地址相对应的过滤器对所述登录信息进行权限验证具体为,所述与所述URL请求地址相对应的过滤器对所述封装后的登录信息进行权限验证。
3、根据权利要求1所述的方法,其特征在于,所述与所述URL请求地址相对应的过滤器对所述登录信息进行权限验证包括:
查找预设的权限配置项,所述权限配置项包括所述登录信息和用户身份的对应关系,以及所述用户身份与所述子类控制器提取显示数据所需权限的对应关系;
如果所述登录信息对应的所述用户身份满足所述子类控制器提取显示数据所需的权限,则所述登录信息通过权限验证。
4、根据权利要求1所述的方法,其特征在于,在所述子类控制器提取显示数据之前,还包括:
所述与所述URL请求地址相对应的过滤器对所述登录信息进行输入验证,所述输入验证具体为,
对预先设置的代码的标签进行替换,生成验证代码;
根据所述验证代码对所述登录信息进行输入验证。
5、根据权利要求1至4中任意一项所述的方法,其特征在于,在所述子类控制器将所述显示数据发送给所述父类控制器之前,还包括:
所述子类控制器将所述显示数据进行封装;
所述子类控制器将所述显示数据发送至所述父类控制器具体为,所述子类控制器将封装的所述显示数据发送至所述父类控制器。
6、根据权利要求5所述的方法,其特征在于,在所述子类控制器将所述封装的显示数据发送至父类控制器之前,还包括:
所述子类控制器将封装的所述显示数据分配至所述与所述URL请求地址相对应的过滤器;
所述与所述URL请求地址相对应的过滤器对所述封装的显示数据进行变量替换,然后将变量替换后的封装的显示数据发送至所述父类控制器。
7、根据权利要求5所述的方法,其特征在于,所述父类控制器根据所述显示数据输出页面包括:
所述父类控制器根据所述URL请求地址的格式参数,将所述封装的显示数据转换为与所述格式参数对应的格式;
所述父类控制器按照所述格式输出页面。
8、一种网页提供装置,其特征在于,包括:
前端控制器,用于获取用户提交的统一资源定位符URL请求地址,并判断所述URL请求地址是否符合预置URL规则;
与所述URL请求地址相对应的过滤器,用于对所述登录信息进行权限验证;
与所述URL请求地址相对应的子类控制器,用于当所述URL请求地址符合预置URL规则,且所述登录信息通过所述权限验证时,提取显示数据,并将所述显示数据发送给所述父类控制器;
父类控制器,用于根据所述显示数据输出页面。
9、根据权利要求8所述的装置,其特征在于,所述前端控制器还包括:
信息封装模块,用于在进行所述权限验证之前,对所述登录信息进行封装,并将封装后的登录信息分配到与所述URL请求地址相对应的过滤器;
所述与所述URL请求地址相对应的过滤器,还用于对所述封装的登录信息进行权限验证。
10、根据权利要求8所述的装置,其特征在于,所述与所述URL请求地址相对应的过滤器包括权限验证模块,所述权限验证模块包括:
查找单元,用于查找预设的权限配置项,所述权限配置项包括所述登录信息和用户身份的对应关系,以及所述用户身份与所述子类控制器提取显示数据所需权限的对应关系;
确定单元,用于如果所述登录信息对应的所述用户身份满足所述子类控制器提取显示数据所需的权限,则所述登录信息通过权限验证。
11、根据权利要求8所述的装置,其特征在于,所述与所述URL请求地址相对应的过滤器还包括:
输入验证模块,用于在所述子类控制器提取显示数据之前,对所述用户提交的登录信息进行输入验证;
所述输入验证模块包括,
生成单元,用于对预先设置的代码的标签进行替换,生成验证代码;
输入验证单元,用于根据所述验证代码对所述登录信息进行输入验证。
12、根据权利要求8至11中任意一项所述的装置,其特征在于,所述子类控制器还包括:
数据封装模块,用于将所述显示数据进行封装;
发送模块,用于将封装的所述显示数据发送至所述父类控制器。
13、根据权利要求12所述的装置,其特征在于,
所述发送模块,还用于在将所述封装的显示数据发送至所述父类控制器之前,将封装的所述显示数据分配至所述与所述URL请求地址相对应的过滤器;
所述与所述URL请求地址相对应的过滤器,还用于对所述封装的显示数据进行变量替换,然后再将变量替换后的封装的显示数据发送至所述父类控制器。
14、根据权利要求12所述的装置,其特征在于,所述父类控制器包括:
转换模块,用于根据所述URL请求地址的格式参数,将所述封装的显示数据转换为与所述格式参数对应的格式;
输出模块,用于按照所述格式输出页面。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN 200910080965 CN101510881B (zh) | 2009-03-30 | 2009-03-30 | 一种网页提供方法及装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN 200910080965 CN101510881B (zh) | 2009-03-30 | 2009-03-30 | 一种网页提供方法及装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN101510881A true CN101510881A (zh) | 2009-08-19 |
CN101510881B CN101510881B (zh) | 2013-01-30 |
Family
ID=41003145
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN 200910080965 Active CN101510881B (zh) | 2009-03-30 | 2009-03-30 | 一种网页提供方法及装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN101510881B (zh) |
Cited By (13)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101799754A (zh) * | 2009-12-17 | 2010-08-11 | 中国电力科学研究院 | 一种web应用开发方法及*** |
CN102223379A (zh) * | 2011-06-28 | 2011-10-19 | 北龙中网(北京)科技有限责任公司 | 网站验证标志处理方法及***、解析服务器和浏览设备 |
CN102710660A (zh) * | 2012-06-26 | 2012-10-03 | 苏州微逸浪科技有限公司 | 一种下一代数据保护***的访问控制方法 |
CN103152365A (zh) * | 2013-04-08 | 2013-06-12 | 北京奇虎科技有限公司 | 对数据进行验证的数据验证方法及服务器 |
CN103164411A (zh) * | 2011-12-12 | 2013-06-19 | 深圳市金蝶中间件有限公司 | 浏览器的网页加载方法 |
CN103605514A (zh) * | 2013-11-11 | 2014-02-26 | 北京奇虎科技有限公司 | 一种前端模板的处理方法及装置 |
CN106060063A (zh) * | 2016-06-24 | 2016-10-26 | 武汉斗鱼网络科技有限公司 | 一种用于互联网网站前端逻辑入口的过滤方法及装置 |
CN107798005A (zh) * | 2016-08-30 | 2018-03-13 | 北京国双科技有限公司 | 网站开发过程中的数据处理方法及装置 |
CN110442812A (zh) * | 2019-05-10 | 2019-11-12 | 平安科技(深圳)有限公司 | 前台页面的权限控制方法和*** |
CN111191161A (zh) * | 2018-11-15 | 2020-05-22 | 武汉斗鱼网络科技有限公司 | 一种页面展示方法、存储介质、电子设备及*** |
CN112003788A (zh) * | 2020-07-23 | 2020-11-27 | 北京达佳互联信息技术有限公司 | 数据请求发送方法、装置、设备及介质 |
CN112417328A (zh) * | 2020-12-03 | 2021-02-26 | 杭州海量存储技术有限公司 | 一种网页监控方法及装置 |
CN114567623A (zh) * | 2022-02-20 | 2022-05-31 | ***股份有限公司 | 一种页面显示方法及装置 |
-
2009
- 2009-03-30 CN CN 200910080965 patent/CN101510881B/zh active Active
Cited By (19)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101799754A (zh) * | 2009-12-17 | 2010-08-11 | 中国电力科学研究院 | 一种web应用开发方法及*** |
CN102223379A (zh) * | 2011-06-28 | 2011-10-19 | 北龙中网(北京)科技有限责任公司 | 网站验证标志处理方法及***、解析服务器和浏览设备 |
CN102223379B (zh) * | 2011-06-28 | 2014-08-13 | 北龙中网(北京)科技有限责任公司 | 网站验证标志处理方法及***、解析服务器和浏览设备 |
CN103164411A (zh) * | 2011-12-12 | 2013-06-19 | 深圳市金蝶中间件有限公司 | 浏览器的网页加载方法 |
CN102710660A (zh) * | 2012-06-26 | 2012-10-03 | 苏州微逸浪科技有限公司 | 一种下一代数据保护***的访问控制方法 |
CN103152365A (zh) * | 2013-04-08 | 2013-06-12 | 北京奇虎科技有限公司 | 对数据进行验证的数据验证方法及服务器 |
CN103605514A (zh) * | 2013-11-11 | 2014-02-26 | 北京奇虎科技有限公司 | 一种前端模板的处理方法及装置 |
CN106060063B (zh) * | 2016-06-24 | 2019-04-23 | 武汉斗鱼网络科技有限公司 | 一种用于互联网网站前端逻辑入口的过滤方法及装置 |
CN106060063A (zh) * | 2016-06-24 | 2016-10-26 | 武汉斗鱼网络科技有限公司 | 一种用于互联网网站前端逻辑入口的过滤方法及装置 |
CN107798005A (zh) * | 2016-08-30 | 2018-03-13 | 北京国双科技有限公司 | 网站开发过程中的数据处理方法及装置 |
CN111191161A (zh) * | 2018-11-15 | 2020-05-22 | 武汉斗鱼网络科技有限公司 | 一种页面展示方法、存储介质、电子设备及*** |
CN111191161B (zh) * | 2018-11-15 | 2022-06-21 | 武汉斗鱼网络科技有限公司 | 一种页面展示方法、存储介质、电子设备及*** |
CN110442812A (zh) * | 2019-05-10 | 2019-11-12 | 平安科技(深圳)有限公司 | 前台页面的权限控制方法和*** |
CN110442812B (zh) * | 2019-05-10 | 2024-02-13 | 平安科技(深圳)有限公司 | 前台页面的权限控制方法和*** |
CN112003788A (zh) * | 2020-07-23 | 2020-11-27 | 北京达佳互联信息技术有限公司 | 数据请求发送方法、装置、设备及介质 |
CN112417328A (zh) * | 2020-12-03 | 2021-02-26 | 杭州海量存储技术有限公司 | 一种网页监控方法及装置 |
CN112417328B (zh) * | 2020-12-03 | 2024-05-31 | 杭州海量存储技术有限公司 | 一种网页监控方法及装置 |
CN114567623A (zh) * | 2022-02-20 | 2022-05-31 | ***股份有限公司 | 一种页面显示方法及装置 |
CN114567623B (zh) * | 2022-02-20 | 2023-09-08 | ***股份有限公司 | 一种页面显示方法及装置 |
Also Published As
Publication number | Publication date |
---|---|
CN101510881B (zh) | 2013-01-30 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN101510881A (zh) | 一种网页提供方法及装置 | |
US10489561B2 (en) | Web application protection | |
US6665674B1 (en) | Framework for open directory operation extensibility | |
CN101127655B (zh) | 集成现有基于万维网的***的方法和*** | |
CN100353733C (zh) | 基于xml文件的rss信息交互处理方法 | |
US20040003033A1 (en) | Method and system for generating a web service interface | |
US20040006653A1 (en) | Method and system for wrapping existing web-based applications producing web services | |
US20130246504A1 (en) | Method for subscribing to notification, apparatus and system | |
US10491565B2 (en) | Generating web application firewall specific validation rule | |
CN106656953A (zh) | 一种基于互联网的***间安全调用接口实现方法 | |
JP2018536232A (ja) | ウェブアプリケーションへのサインオンを制御するためのシステムおよび方法 | |
CN103227799A (zh) | 基于多应用***统一用户管理及单点登陆平台的实现方法 | |
US20030105806A1 (en) | Service facilitator for automating object conversions and communication connections in client-server systems | |
CN104836812A (zh) | 一种Portal认证方法、装置及*** | |
US10291718B2 (en) | Method and apparatus for implementing communication from web page to client | |
US20140026203A1 (en) | Authenticating a user for testing purposes | |
CN105007196A (zh) | 一种基于http协议的自动测试方法及*** | |
CN105791249A (zh) | 一种第三方应用处理方法、装置以及*** | |
CN105959278B (zh) | 一种调用vpn的方法、设备和*** | |
US20200153828A1 (en) | Transparency mechanism for the local composition of personal user data stored in a distributed fashion | |
KR101349201B1 (ko) | 모바일 단말에서 웹브라우저와 로컬 리소스의 연동 장치 및 그 방법 | |
CN101331740B (zh) | 利用宏支持来外部化http安全消息处理的方法和*** | |
CN112104641B (zh) | 登录形式转换方法、装置、存储介质及电子设备 | |
CN115811513B (zh) | 第三方接口请求设计方法、装置、存储介质 | |
RU2676880C2 (ru) | Система и способ для обработки информации web-обзора |
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 |