CN116955880A - 一种静态网页的实现方法、系统、电子设备及存储介质 - Google Patents
一种静态网页的实现方法、系统、电子设备及存储介质 Download PDFInfo
- Publication number
- CN116955880A CN116955880A CN202310706499.7A CN202310706499A CN116955880A CN 116955880 A CN116955880 A CN 116955880A CN 202310706499 A CN202310706499 A CN 202310706499A CN 116955880 A CN116955880 A CN 116955880A
- Authority
- CN
- China
- Prior art keywords
- code
- resource
- link
- static
- webpage
- 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.)
- Pending
Links
- 230000003068 static effect Effects 0.000 title claims abstract description 91
- 238000000034 method Methods 0.000 title claims abstract description 48
- 230000000977 initiatory effect Effects 0.000 claims abstract description 14
- 238000012552 review Methods 0.000 abstract description 2
- 230000006870 function Effects 0.000 description 10
- 238000010586 diagram Methods 0.000 description 9
- 238000004590 computer program Methods 0.000 description 8
- 238000004891 communication Methods 0.000 description 7
- 230000008569 process Effects 0.000 description 4
- 238000012986 modification Methods 0.000 description 3
- 230000004048 modification Effects 0.000 description 3
- 238000006467 substitution reaction Methods 0.000 description 3
- 238000013459 approach Methods 0.000 description 2
- 238000003491 array Methods 0.000 description 2
- 238000005516 engineering process Methods 0.000 description 2
- 239000000284 extract Substances 0.000 description 2
- 230000003993 interaction Effects 0.000 description 2
- 239000000463 material Substances 0.000 description 2
- 230000003287 optical effect Effects 0.000 description 2
- 238000004458 analytical method Methods 0.000 description 1
- 230000009286 beneficial effect Effects 0.000 description 1
- 230000008859 change Effects 0.000 description 1
- 239000003795 chemical substances by application Substances 0.000 description 1
- 238000013500 data storage Methods 0.000 description 1
- 238000007689 inspection Methods 0.000 description 1
- 238000010295 mobile communication Methods 0.000 description 1
- 239000013307 optical fiber Substances 0.000 description 1
- 238000012545 processing Methods 0.000 description 1
- 238000009877 rendering Methods 0.000 description 1
- 230000004044 response Effects 0.000 description 1
- 239000010979 ruby Substances 0.000 description 1
- 229910001750 ruby Inorganic materials 0.000 description 1
- 239000007787 solid Substances 0.000 description 1
- 238000012795 verification Methods 0.000 description 1
Classifications
-
- 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/958—Organisation or management of web site content, e.g. publishing, maintaining pages or automatic linking
-
- 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/955—Retrieval from the web using information identifiers, e.g. uniform resource locators [URL]
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F21/00—Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F21/60—Protecting data
- G06F21/62—Protecting access to data via a platform, e.g. using keys or access control rules
- G06F21/6218—Protecting access to data via a platform, e.g. using keys or access control rules to a system of files or objects, e.g. local or distributed file system or database
- G06F21/6245—Protecting personal data, e.g. for financial or medical purposes
- G06F21/6263—Protecting personal data, e.g. for financial or medical purposes during internet communication, e.g. revealing personal data from cookies
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Databases & Information Systems (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Data Mining & Analysis (AREA)
- Health & Medical Sciences (AREA)
- Bioethics (AREA)
- General Health & Medical Sciences (AREA)
- Medical Informatics (AREA)
- Computer Hardware Design (AREA)
- Computer Security & Cryptography (AREA)
- Software Systems (AREA)
- Information Transfer Between Computers (AREA)
Abstract
本发明公开了一种静态网页的实现方法、系统、电子设备及存储介质,方法包括:获取带有code的链接地址,并根据链接地址向服务器发起网络请求;接收服务器返回的链接地址的网站首页;根据网站首页向服务器发起带有code的ajax请求;接收服务器返回的资源链接列表和静态网页的源代码;根据资源链接列表和静态网页的源代码生成链接地址对应的网页。本发明可以应用于在线考试、隐私信息查阅等安全平台,有效防止网络爬虫、防止静态资源泄漏,可广泛应用于静态网页实现领域。
Description
技术领域
本发明涉及静态网页实现领域,尤其是一种静态网页的实现方法、系统、电子设备及存储介质。
背景技术
在当今互联网知识时代,网络安全要求越来越高,对网站资源保护意识也越来越强,防盗链层出不穷。对于静态网站资源的保护,现有技术包括以下方法:(1)Referrer检查:服务器检查HTTP请求头中的Referrer字段,只允许来源于特定域名的请求访问资源。但是,该方法可以被伪造,因此该方法不可靠。(2)Token验证:服务器为每个合法请求生成一个唯一的token,并将其嵌入到资源URL中。请求时必须携带此token,才能访问资源。这种方法比Referrer检查更安全,但需要较大的计算量和存储量。(3)IP白名单:只允许特定IP地址访问资源。但是,这种方法可能会受到代理服务器和VPN等技术的影响,即IP地址也可以伪造。(4)加密链接:将资源URL进行加密,只有解密后才能访问资源,这种方法会增加服务器负担。(5)CDN防盗链:使用CDN,设置防盗链规则,只允许特定域名的请求访问资源。这种方法需要支付CDN服务费用。
现有静态网站资源的保护主要依靠服务器或代理的限制,这些限制也只达到部分用户可以访问,还不能实现一次性访问功能。又因为资源URL是明文字符,不能加密,一直处于暴露状态。动态网站通过后端程序比如登录、密码是可以实现一次性访问限制,但其页面相关资源仍属于静态资源,不能限制一次性访问或缓存保存。
发明内容
有鉴于此,本发明实施例提供一种静态网页的实现方法、系统、电子设备及存储介质,用于保护静态网页资源不被泄露。
本发明实施例的一方面提供了一种静态网页的实现方法,包括:
获取带有code的链接地址,并根据所述链接地址向服务器发起网络请求;
接收所述服务器返回的所述链接地址的网站首页;
根据所述网站首页向所述服务器发起带有code的ajax请求;
接收所述服务器返回的资源链接列表和静态网页的源代码;
根据所述资源链接列表和静态网页的源代码生成所述链接地址对应的网页。
可选地,所述根据所述资源链接列表和静态网页的源代码生成所述链接地址对应的网页,包括:
将所述资源链接列表中的每条资源链接转存到内存;
生成每条所述资源链对应的第一URL,并将所述第一URL替换到所述源代码中;
将经过所述第一URL替换后的所述源代码转存到内存,并生成第二URL;
根据所述第二URL生成所述链接地址对应的网页。
可选地,所述方法还包括:
在所述链接地址对应的网页渲染完成并被访问后,释放内存的所有资源。
本发明实施例的另一方面还提供了另一种静态网页的实现方法,包括:
接收客户端根据带有code的链接地址发起的网络请求,并返回所述链接地址的网站首页;
接收所述客户端根据所述网站首页发起的带有code的ajax请求,查询数据库中是否存在所述code的记录;
若数据库中存在所述code的记录且所述code的记录未被访问过,则根据所述code获取静态网页的源代码,并从所述源代码中提取所有资源链接;
读取所述资源链接的地址所对应的文件夹中与所述资源链接相关的目标数据,得到资源链接列表;
将所述资源链接列表和所述静态网页的源代码返回给所述客户端;
在所述链接地址被访问后,在数据库中将所述code的记录标记为已被访问过。
可选地,所述读取所述资源链接的地址所对应的文件夹中与所述资源链接相关的目标数据,包括:
读取所述资源链接的地址所对应的文件夹中与所述资源链接相关的文件流或字符串源码。
可选地,所述方法还包括:
根据md5将所述资源链接加密成固定长的key字符串,并用key替换所述资源链接的地址。
可选地,所述方法还包括:
若数据库中不存在所述code的记录或所述code的记录已被访问过,则通过响应所述ajax请求告知所述客户端所述链接地址已失效。
本发明实施例的另一方面还提供了一种静态网页的实现系统,包括:客户端和服务器;
所述客户端,用于获取带有code的链接地址,并根据所述链接地址向服务器发起网络请求;接收所述服务器返回的所述链接地址的网站首页;根据所述网站首页向所述服务器发起带有code的ajax请求;接收所述服务器返回的资源链接列表和静态网页的源代码;根据所述资源链接列表和静态网页的源代码生成所述链接地址对应的网页;
所述服务器,用于接收客户端根据带有code的链接地址发起的网络请求,并返回所述链接地址的网站首页;接收所述客户端根据所述网站首页发起的带有code的ajax请求,查询数据库中是否存在所述code的记录;若数据库中存在所述code的记录且所述code的记录未被访问过,则根据所述code获取静态网页的源代码,并从所述源代码中提取所有资源链接;读取所述资源链接的地址所对应的文件夹中与所述资源链接相关的目标数据,得到资源链接列表;将所述资源链接列表和所述静态网页的源代码返回给所述客户端;在所述链接地址被访问后,在数据库中将所述code的记录标记为已被访问过。
本发明实施例的另一方面还提供了一种电子设备,包括处理器以及存储器;
所述存储器用于存储程序;
所述处理器执行所述程序实现所述的一种静态网页的实现方法。
本发明实施例的另一方面还提供了一种计算机可读存储介质,所述存储介质存储有程序,所述程序被处理器执行实现所述的一种静态网页的实现方法。
本发明实施例还公开了一种计算机程序产品或计算机程序,该计算机程序产品或计算机程序包括计算机指令,该计算机指令存储在计算机可读存储介质中。计算机设备的处理器可以从计算机可读存储介质读取该计算机指令,处理器执行该计算机指令,使得该计算机设备执行前面的方法。
本发明的服务器接收客户端根据网站首页发起的带有code的ajax请求,查询数据库中是否存在code的记录;若数据库中存在code的记录且code的记录未被访问过,则根据code获取静态网页的源代码,并从源代码中提取所有资源链接;读取所有资源链接然后将得到的资源链接列表,以及静态网页的源代码返回客户端,从而实现静态网页及网页相关所有资源都只能访问一次,即实现了网页虽然是静态的,但只能访问一次,再次访问或者刷新链接都会访问失败。而且静态网页还不能被浏览器缓存或“另存为”菜单保存,很好地保护了网页资源的安全。
附图说明
为了更清楚地说明本发明实施例中的技术方案,下面将对实施例描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1为本发明实施例提供的一种静态网页的实现方法的流程示意图;
图2为本发明实施例提供的另一种静态网页的实现方法的流程示意图;
图3为本发明实施例提供的一种静态网页实现的示例流程图;
图4为本发明实施例提供的一种加密连接的代码示例图;
图5为本发明实施例提供的一种生成静态网页的代码示例图;
图6为本发明实施例提供的一种释放内存的代码示例图;
图7为本发明实施例提供的一种静态网页的实现系统的结构框图图;
图8为本发明实施例提供的一种电子设备的硬件结构示意图。
具体实施方式
为了使本发明的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本发明进行进一步详细说明。应当理解,此处所描述的具体实施例仅仅用以解释本发明,并不用于限定本发明。
需要说明的是,虽然在装置示意图中进行了功能模块划分,在流程图中示出了逻辑顺序,但是在某些情况下,可以以不同于装置中的模块划分,或流程图中的顺序执行所示出或描述的步骤。
说明书和权利要求书及上述附图中的术语“第一”、“第二”等是用于区别类似的对象,而不必用于描述特定的顺序或先后次序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素的过程、方法、物品或者设备中还存在另外的相同要素。
除非另有定义,本文所使用的所有的技术和科学术语与属于本发明的技术领域的技术人员通常理解的含义相同。本文中所使用的术语只是为了描述本发明实施例的目的,不是旨在限制本发明。
对本发明实施例进行进一步详细说明之前,对本发明实施例中涉及的名词和术语进行说明,本发明实施例中涉及的名词和术语适用于如下的解释:
静态网站:是指网站的网页内容在服务器上预先生成好,不会根据用户的请求做出任何改变,用户在访问时只能看到固定的页面内容。静态网站通常由HTML、CSS、JavaScript等静态文件组成,不需要任何动态脚本语言的支持,一般文件是以htm、html、shtml等为后缀。
动态网站:是一种能够根据用户请求动态生成内容的网站。与静态网站不同,动态网站可以根据用户的输入和交互动态地生成页面、内容和数据。动态网站通常使用数据库和脚本语言(如PHP、Python、Ruby等)来实现动态功能。
静态资源:是指在服务器上存储的不需要动态生成的文件,如HTML、CSS、JavaScript、图片、视频、音频等。这些文件一般不会在请求时进行处理,而是直接返回给客户端。静态资源可以通过HTTP协议直接访问,并且可以缓存,提高网站访问速度。
网络爬虫:是一种自动化程序,通过互联网收集信息并整理数据的工具。它会按照一定的规则和算法,自动抓取和解析网页上的信息,并将这些信息存储在本地数据库或者其他数据存储设备中,以供后续的分析和使用。
链接URL:是一个指向网络资源的地址,通常使用HTTP或HTTPS协议。它由协议、主机名、端口号(可选)、路径和查询字符串(可选)等组成。在互联网上,链接URL常被用于指向网页、图片、视频、音频等各种媒体资源。用户可以通过点击链接URL来访问相应的资源。
网页盗链:是指在自己的网页上使用别人网站上的图片、视频、音频等资源,而不是将这些资源下载到自己的服务器上再使用。盗链的本质是利用了别人的资源,占用了别人的带宽和流量,同时也会增加别人服务器的负荷,给别人造成不必要的损失和麻烦。
参照图1,本发明实施例提供了一种静态网页的实现方法,具体包括以下步骤:
S100:获取带有code的链接地址,并根据所述链接地址向服务器发起网络请求。
S110:接收所述服务器返回的所述链接地址的网站首页。
S120:根据所述网站首页向所述服务器发起带有code的ajax请求。
S130:接收所述服务器返回的资源链接列表和静态网页的源代码。
S140:根据所述资源链接列表和静态网页的源代码生成所述链接地址对应的网页。
具体的,生成所述链接地址对应的网页可以包括以下步骤:
S141:将所述资源链接列表中的每条资源链接转存到内存。
S142:生成每条所述资源链对应的第一URL,并将所述第一URL替换到所述源代码中。
S143:将经过所述第一URL替换后的所述源代码转存到内存,并生成第二URL。
S144:根据所述第二URL生成所述链接地址对应的网页。
进一步地,本发明实施例还可以包括以下过程:
S150:在所述链接地址对应的网页渲染完成并被访问后,释放内存的所有资源。
参照图2,本发明实施例提供了另一种静态网页的实现方法,具体包括以下步骤:
S200:接收客户端根据带有code的链接地址发起的网络请求,并返回所述链接地址的网站首页。
S210:接收所述客户端根据所述网站首页发起的带有code的ajax请求,查询数据库中是否存在所述code的记录。
S220:若数据库中存在所述code的记录且所述code的记录未被访问过,则根据所述code获取静态网页的源代码,并从所述源代码中提取所有资源链接。
进一步地,本发明实施例还可以包括:若数据库中不存在所述code的记录或所述code的记录已被访问过,则通过响应所述ajax请求告知所述客户端所述链接地址已失效。
S220:读取所述资源链接的地址所对应的文件夹中与所述资源链接相关的目标数据,得到资源链接列表。
具体的,目标数据可以包括静态网页的各自相关资源,示例如文件流、字符串源码图片、CSS或JS等。
一种可选的实施方式下,上述S220的步骤可以包括:读取所述资源链接的地址所对应的文件夹中与所述资源链接相关的文件流或字符串源码。
S230:将所述资源链接列表和所述静态网页的源代码返回给所述客户端。
S240:在所述链接地址被访问后,在数据库中将所述code的记录标记为已被访问过。
为了防止服务器的资源链接地址暴露,本发明实施例还可以包括以下步骤:
S250:根据md5将所述资源链接加密成固定长的key字符串,并用key替换所述资源链接的地址。
本发明实施例相较于现有技术,至少包括以下有益效果:
1.不需要借助服务器生成唯一Token,限制访问可以仅通过客户端实现。
2.静态网页链接URL有唯一性,不可复制、不可转发、不可收藏。
3.对网站资源起到绝对保密作用,不暴露原始链接,网页不可保存。
具有敏感信息的静态网页,网页资源需要隐私保密,禁止用户保存页面,缓存资源。且网页链接只能访问一次就失效。本发明可应用于在线考试、隐私信息查阅等安全平台,有效防止网络爬虫、防止静态资源泄漏。
接下来将以具体实例说明本发明的应用过程。
参照图3,本发明实施例提供了一种静态网页实现的示例流程图。
具体的,本发明实施例可以包括以下步骤:
1、首先,客户端获取用户在浏览器里输入的带有code的链接地址,向服务器发起网络请求。
2、服务器返回网站首页index.html内容到客户端的浏览器里展示。
3、然后,客户端的index.html向服务器发起一个带code的ajax请求,获取网页资源。
4、后端的服务器接收到ajax请求并提取code参数,首先在数据库里查询是否有该code的记录。
5、执行数据库判断,若有该code的记录且该code的记录没有被访问过,则输出资源。若没有该code的记录或该code的记录被标识为已经访问过,则终止程序,并通过步骤10通知客户端网页链接已经失效过期。
6、后端的服务器根据code获取静态网页模板的源代码,并从源代码中提取所有资源链接。
7、然后服务器根据链接地址在服务器文件夹里读取所有相关资源的文件流或字符串源码。
8、并且,服务器用md5将资源链接加密成固定长的key字符串,并用key替换原始资源链接的地址,防止服务器资源链接地址暴露。下面以nodejs为服务器的程序为例,参照图4,本发明实施例提供了一种加密连接的代码示例图。
9、为了让code失效,本发明实施例可以更新数据库标识,将相应code标识为已经被访问过。
10、服务器将静态网页的源代码和资源链接列表通过ajax响应发送给客户端。
11、客户端接收资源链接列表并依次资源链接列表中的资源连接转存到内存,并生成资源链接URL替换源代码。
12、客户端将资源链接URL替换到源代码中,最后将静态网页所有的源代码也转存到内存里。
13、客户端通过内存生成一个网页链接URL,根据该网页连接URL生成对应的静态网页,并返回展示给用户浏览。参照图5,本发明实施例提供了一种生成静态网页的代码示例图。
14、最后,客户端渲染静态网页的页面,页面被访问过后控制内存释放所有资源,达到一次性访问功能。参照图6,本发明实施例提供了一种释放内存的代码示例图。
参照图7,本发明实施例提供了一种静态网页的实现系统,包括:客户端和服务器;
所述客户端,用于获取带有code的链接地址,并根据所述链接地址向服务器发起网络请求;接收所述服务器返回的所述链接地址的网站首页;根据所述网站首页向所述服务器发起带有code的ajax请求;接收所述服务器返回的资源链接列表和静态网页的源代码;根据所述资源链接列表和静态网页的源代码生成所述链接地址对应的网页;
所述服务器,用于接收客户端根据带有code的链接地址发起的网络请求,并返回所述链接地址的网站首页;接收所述客户端根据所述网站首页发起的带有code的ajax请求,查询数据库中是否存在所述code的记录;若数据库中存在所述code的记录且所述code的记录未被访问过,则根据所述code获取静态网页的源代码,并从所述源代码中提取所有资源链接;读取所述资源链接的地址所对应的文件夹中与所述资源链接相关的目标数据,得到资源链接列表;将所述资源链接列表和所述静态网页的源代码返回给所述客户端;在所述链接地址被访问后,在数据库中将所述code的记录标记为已被访问过。
该静态网页的实现系统的具体实施方式与上述静态网页的实现方法的具体实施例基本相同,在此不再赘述。
本发明实施例还提供了一种电子设备,电子设备包括存储器和处理器,存储器存储有计算机程序,处理器执行计算机程序时实现上述静态网页的实现方法。该电子设备可以为包括平板电脑、车载电脑等任意智能终端。
请参阅图8,图8示意了另一实施例的电子设备的硬件结构,电子设备包括:
处理器801,可以采用通用的CPU(CentralProcessingUnit,中央处理器)、微处理器、应用专用集成电路(ApplicationSpecificIntegratedCircuit,ASIC)、或者一个或多个集成电路等方式实现,用于执行相关程序,以实现本发明实施例所提供的技术方案;
存储器802,可以采用只读存储器(ReadOnlyMemory,ROM)、静态存储设备、动态存储设备或者随机存取存储器(RandomAccessMemory,RAM)等形式实现。存储器802可以存储操作系统和其他应用程序,在通过软件或者固件来实现本说明书实施例所提供的技术方案时,相关的程序代码保存在存储器802中,并由处理器801来调用执行本发明实施例的XXX方法;
输入/输出接口803,用于实现信息输入及输出;
通信接口804,用于实现本设备与其他设备的通信交互,可以通过有线方式(例如USB、网线等)实现通信,也可以通过无线方式(例如移动网络、WIFI、蓝牙等)实现通信;
总线805,在设备的各个组件(例如处理器801、存储器802、输入/输出接口803和通信接口804)之间传输信息;
其中处理器801、存储器802、输入/输出接口803和通信接口804通过总线805实现彼此之间在设备内部的通信连接。
本发明实施例还提供了一种计算机可读存储介质,该计算机可读存储介质存储有计算机程序,该计算机程序被处理器执行时实现上述一种静态网页的实现方法。
存储器作为一种非暂态计算机可读存储介质,可用于存储非暂态软件程序以及非暂态性计算机可执行程序。此外,存储器可以包括高速随机存取存储器,还可以包括非暂态存储器,例如至少一个磁盘存储器件、闪存器件、或其他非暂态固态存储器件。在一些实施方式中,存储器可选包括相对于处理器远程设置的存储器,这些远程存储器可以通过网络连接至该处理器。上述网络的实例包括但不限于互联网、企业内部网、局域网、移动通信网及其组合。
本发明实施例还公开了一种计算机程序产品或计算机程序,该计算机程序产品或计算机程序包括计算机指令,该计算机指令存储在计算机可读存储介质中。计算机设备的处理器可以从计算机可读存储介质读取该计算机指令,处理器执行该计算机指令,使得该计算机设备执行图1和/或图2所示的方法。
在一些可选择的实施例中,在方框图中提到的功能/操作可以不按照操作示图提到的顺序发生。例如,取决于所涉及的功能/操作,连续示出的两个方框实际上可以被大体上同时地执行或所述方框有时能以相反顺序被执行。此外,在本发明的流程图中所呈现和描述的实施例以示例的方式被提供,目的在于提供对技术更全面的理解。所公开的方法不限于本文所呈现的操作和逻辑流程。可选择的实施例是可预期的,其中各种操作的顺序被改变以及其中被描述为较大操作的一部分的子操作被独立地执行。
此外,虽然在功能性模块的背景下描述了本发明,但应当理解的是,除非另有相反说明,所述的功能和/或特征中的一个或多个可以被集成在单个物理装置和/或软件模块中,或者一个或多个功能和/或特征可以在单独的物理装置或软件模块中被实现。还可以理解的是,有关每个模块的实际实现的详细讨论对于理解本发明是不必要的。更确切地说,考虑到在本文中公开的装置中各种功能模块的属性、功能和内部关系的情况下,在工程师的常规技术内将会了解该模块的实际实现。因此,本领域技术人员运用普通技术就能够在无需过度试验的情况下实现在权利要求书中所阐明的本发明。还可以理解的是,所公开的特定概念仅仅是说明性的,并不意在限制本发明的范围,本发明的范围由所附权利要求书及其等同方案的全部范围决定。
所述功能如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本发明各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:U盘、移动硬盘、只读存储器(ROM,Read-Only Memory)、随机存取存储器(RAM,Random Access Memory)、磁碟或者光盘等各种可以存储程序代码的介质。
在流程图中表示或在此以其他方式描述的逻辑和/或步骤,例如,可以被认为是用于实现逻辑功能的可执行指令的定序列表,可以具体实现在任何计算机可读介质中,以供指令执行系统、装置或设备(如基于计算机的系统、包括处理器的系统或其他可以从指令执行系统、装置或设备取指令并执行指令的系统)使用,或结合这些指令执行系统、装置或设备而使用。就本说明书而言,“计算机可读介质”可以是任何可以包含、存储、通信、传播或传输程序以供指令执行系统、装置或设备或结合这些指令执行系统、装置或设备而使用的装置。
计算机可读介质的更具体的示例(非穷尽性列表)包括以下:具有一个或多个布线的电连接部(电子装置)、便携式计算机盘盒(磁装置)、随机存取存储器(RAM)、只读存储器(ROM)、可擦除可编辑只读存储器(EPROM或闪速存储器)、光纤装置以及便携式光盘只读存储器(CDROM)。另外,计算机可读介质甚至可以是可在其上打印所述程序的纸或其他合适的介质,因为可以例如通过对纸或其他介质进行光学扫描,接着进行编辑、解译或必要时以其他合适方式进行处理来以电子方式获得所述程序,然后将其存储在计算机存储器中。
应当理解,本发明的各部分可以用硬件、软件、固件或它们的组合来实现。在上述实施方式中,多个步骤或方法可以用存储在存储器中且由合适的指令执行系统执行的软件或固件来实现。例如,如果用硬件来实现,和在另一实施方式中一样,可用本领域公知的下列技术中的任一项或他们的组合来实现:具有用于对数据信号实现逻辑功能的逻辑门电路的离散逻辑电路,具有合适的组合逻辑门电路的专用集成电路,可编程门阵列(PGA),现场可编程门阵列(FPGA)等。
在本说明书的描述中,参考术语“一个实施例”、“一些实施例”、“示例”、“具体示例”、或“一些示例”等的描述意指结合该实施例或示例描述的具体特征、结构、材料或者特点包含于本发明的至少一个实施例或示例中。在本说明书中,对上述术语的示意性表述不一定指的是相同的实施例或示例。而且,描述的具体特征、结构、材料或者特点可以在任何的一个或多个实施例或示例中以合适的方式结合。
尽管已经示出和描述了本发明的实施例,本领域的普通技术人员可以理解:在不脱离本发明的原理和宗旨的情况下可以对这些实施例进行多种变化、修改、替换和变型,本发明的范围由权利要求及其等同物限定。
以上是对本发明的较佳实施进行了具体说明,但本发明并不限于所述实施例,熟悉本领域的技术人员在不违背本发明精神的前提下还可做出种种的等同变形或替换,这些等同的变形或替换均包含在本发明权利要求所限定的范围内。
Claims (10)
1.一种静态网页的实现方法,其特征在于,包括:
获取带有code的链接地址,并根据所述链接地址向服务器发起网络请求;
接收所述服务器返回的所述链接地址的网站首页;
根据所述网站首页向所述服务器发起带有code的ajax请求;
接收所述服务器返回的资源链接列表和静态网页的源代码;
根据所述资源链接列表和静态网页的源代码生成所述链接地址对应的网页。
2.根据权利要求1所述的一种静态网页的实现方法,其特征在于,所述根据所述资源链接列表和静态网页的源代码生成所述链接地址对应的网页,包括:
将所述资源链接列表中的每条资源链接转存到内存;
生成每条所述资源链对应的第一URL,并将所述第一URL替换到所述源代码中;
将经过所述第一URL替换后的所述源代码转存到内存,并生成第二URL;
根据所述第二URL生成所述链接地址对应的网页。
3.根据权利要求2所述的一种静态网页的实现方法,其特征在于,所述方法还包括:
在所述链接地址对应的网页渲染完成并被访问后,释放内存的所有资源。
4.一种静态网页的实现方法,其特征在于,包括:
接收客户端根据带有code的链接地址发起的网络请求,并返回所述链接地址的网站首页;
接收所述客户端根据所述网站首页发起的带有code的ajax请求,查询数据库中是否存在所述code的记录;
若数据库中存在所述code的记录且所述code的记录未被访问过,则根据所述code获取静态网页的源代码,并从所述源代码中提取所有资源链接;
读取所述资源链接的地址所对应的文件夹中与所述资源链接相关的目标数据,得到资源链接列表;
将所述资源链接列表和所述静态网页的源代码返回给所述客户端;
在所述链接地址被访问后,在数据库中将所述code的记录标记为已被访问过。
5.根据权利要求4所述的一种静态网页的实现方法,其特征在于,所述读取所述资源链接的地址所对应的文件夹中与所述资源链接相关的目标数据,包括:
读取所述资源链接的地址所对应的文件夹中与所述资源链接相关的文件流或字符串源码。
6.根据权利要求4所述的一种静态网页的实现方法,其特征在于,所述方法还包括:
根据md5将所述资源链接加密成固定长的key字符串,并用key替换所述资源链接的地址。
7.根据权利要求4所述的一种静态网页的实现方法,其特征在于,所述方法还包括:
若数据库中不存在所述code的记录或所述code的记录已被访问过,则通过响应所述ajax请求告知所述客户端所述链接地址已失效。
8.一种静态网页的实现系统,其特征在于,包括:客户端和服务器;
所述客户端,用于获取带有code的链接地址,并根据所述链接地址向服务器发起网络请求;接收所述服务器返回的所述链接地址的网站首页;根据所述网站首页向所述服务器发起带有code的ajax请求;接收所述服务器返回的资源链接列表和静态网页的源代码;根据所述资源链接列表和静态网页的源代码生成所述链接地址对应的网页;
所述服务器,用于接收客户端根据带有code的链接地址发起的网络请求,并返回所述链接地址的网站首页;接收所述客户端根据所述网站首页发起的带有code的ajax请求,查询数据库中是否存在所述code的记录;若数据库中存在所述code的记录且所述code的记录未被访问过,则根据所述code获取静态网页的源代码,并从所述源代码中提取所有资源链接;读取所述资源链接的地址所对应的文件夹中与所述资源链接相关的目标数据,得到资源链接列表;将所述资源链接列表和所述静态网页的源代码返回给所述客户端;在所述链接地址被访问后,在数据库中将所述code的记录标记为已被访问过。
9.一种电子设备,其特征在于,包括处理器以及存储器;
所述存储器用于存储程序;
所述处理器执行所述程序实现如权利要求1至7中任一项所述的一种静态网页的实现方法。
10.一种计算机可读存储介质,其特征在于,所述存储介质存储有程序,所述程序被处理器执行实现如权利要求1至7中任一项所述的一种静态网页的实现方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202310706499.7A CN116955880A (zh) | 2023-06-14 | 2023-06-14 | 一种静态网页的实现方法、系统、电子设备及存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202310706499.7A CN116955880A (zh) | 2023-06-14 | 2023-06-14 | 一种静态网页的实现方法、系统、电子设备及存储介质 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN116955880A true CN116955880A (zh) | 2023-10-27 |
Family
ID=88446907
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202310706499.7A Pending CN116955880A (zh) | 2023-06-14 | 2023-06-14 | 一种静态网页的实现方法、系统、电子设备及存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN116955880A (zh) |
-
2023
- 2023-06-14 CN CN202310706499.7A patent/CN116955880A/zh active Pending
Similar Documents
Publication | Publication Date | Title |
---|---|---|
Ismail et al. | A proposal and implementation of automatic detection/collection system for cross-site scripting vulnerability | |
CN106302337B (zh) | 漏洞检测方法和装置 | |
JP5681095B2 (ja) | クロスドメインクッキーを使用したウェブアクセス | |
CN107341160B (zh) | 一种拦截爬虫的方法及装置 | |
US8819819B1 (en) | Method and system for automatically obtaining webpage content in the presence of javascript | |
CN102473171B (zh) | 将有关本地机器的信息传达给浏览器应用 | |
US8286248B1 (en) | System and method of web application discovery via capture and analysis of HTTP requests for external resources | |
CN105472052B (zh) | 一种跨域服务器的登录方法和系统 | |
WO2016173200A1 (zh) | 用于检测恶意网址的方法和系统 | |
US20110289434A1 (en) | Certified URL checking, caching, and categorization service | |
CN107016074B (zh) | 一种网页加载方法及装置 | |
CN102571846A (zh) | 一种转发http请求的方法及装置 | |
WO2009111224A1 (en) | Identification of and countermeasures against forged websites | |
EP3991389B1 (en) | File upload control for client-side applications in proxy solutions | |
CN107959660A (zh) | 一种基于Nginx的静态文件访问方法和装置 | |
US8789177B1 (en) | Method and system for automatically obtaining web page content in the presence of redirects | |
CN108574686B (zh) | 一种在线预览文件的方法及装置 | |
WO2016189465A1 (en) | 3rd party request-blocking bypass layer | |
CN109508437B (zh) | 一种搜索网站审计方法、系统及网关设备和存储介质 | |
JP6666441B2 (ja) | Ipアドレス取得方法及び装置 | |
US20200177664A1 (en) | Systems and methods for accessing multiple resources via one identifier | |
CN113392297A (zh) | 一种爬取数据的方法、系统及设备 | |
CN110633432A (zh) | 一种获取数据的方法、装置、终端设备及介质 | |
CN116955880A (zh) | 一种静态网页的实现方法、系统、电子设备及存储介质 | |
AU2019384114B2 (en) | Method and apparatus for accessing proprietary resources on a co-browse session |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination |