本发明涉及web后端开发,尤其涉及一种静态文件打包方法、装置、设备及存储介质。
背景技术:
1、web应用程序是指在互联网上使用浏览器等客户端进行访问和使用的软件应用程序,web应用程序的项目文件一般可以分为静态文件和代码文件。静态文件主要包括web页面、图片等资源文件,例如html、css、javascript、json、toml等文件类型。这些文件的内容是固定的,每个文件都是独立的,直接保存在服务器上。代码文件则是指服务器端的程序文件,包括使用golang、java、python等语言编写的后端代码。
2、然而,由于静态文件和后端程序之间是互相分离的,使得web应用程序的部署变得复杂,在部署时既需要考虑后端程序部署,也要考虑静态文件的部署。此外,用户可以直接查看静态文件并修改,也使得应用程序存在安全隐患。
技术实现思路
1、有鉴于此,本发明的目的是为了克服现有技术中的不足,提供一种静态文件打包方法、装置、设备及存储介质。
2、本发明提供如下技术方案:
3、第一方面,本申请提供了一种静态文件打包方法,包括:
4、获取应用程序的静态文件目录,根据所述静态文件目录确定静态文件类型;
5、根据所述静态文件类型,在所述应用程序中创建与所述静态文件类型对应的静态文件存储目录;
6、调用所述应用程序中的静态文件类型获取接口,获取每个类型的静态文件,将每个类型的所述静态文件存储到对应的所述静态文件存储目录;
7、定义一个变量,通过添加变量注释将所述静态文件存储目录嵌入到所述变量中,通过预设的打包方式,将所述变量进行打包,得到打包文件,所述打包文件包括二进制文件。
8、一种实施方式中,所述根据所述静态文件目录确定静态文件类型,包括:
9、获取所述静态文件目录中的文件类型关键词;
10、根据所述文件类型关键词,确定所述静态文件类型。
11、一种实施方式中,所述根据所述静态文件类型,在所述应用程序中创建与所述静态文件类型对应的静态文件存储目录,包括:
12、若所述静态文件类型包括单文件类型,则在所述应用程序中创建配置文件目录;
13、若所述静态文件类型包括模板文件目录类型,则在所述应用程序中创建模板存放目录;
14、若所述静态文件类型包括静态资源文件类型,则在所述应用程序中创建文件存储目录。
15、一种实施方式中,所述调用所述应用程序中的静态文件类型获取接口,获取每个类型的静态文件,将每个类型的所述静态文件存储到对应的所述静态文件存储目录,包括:
16、调用单文件获取接口,将所述单文件类型的静态文件存储到所述配置文件目录;
17、调用模板文件目录获取接口,将所述模板文件目录类型的静态文件存储到所述模板存放目录;
18、调用静态资源文件获取接口,将所述静态资源文件类型的静态文件存储到所述文件存储目录。
19、一种实施方式中,所述定义一个变量,通过添加变量注释将所述静态文件存储目录嵌入到所述变量中,通过预设的打包方式,将所述变量进行打包,包括:
20、在所述应用程序的源码文件中引入嵌入系统库,并定义一个字节数组变量,将所述配置文件目录嵌入到所述字节数组变量;
21、通过第一打包方式,将所述字节数组变量进行打包,所述第一打包方式包括:
22、在所述应用程序源码文件中将所述字节数组变量转换为结构体,完成所述单文件类型的静态文件的打包。
23、一种实施方式中,所述定义一个变量,通过添加变量注释将所述静态文件存储目录嵌入到所述变量中,通过预设的打包方式,将所述变量进行打包,包括:
24、在所述应用程序的源码文件中定义一个内置变量,将所述模板存放目录嵌入到所述内置变量中;
25、通过第二打包方式,将所述内置变量进行打包,所述第二打包方式包括:
26、编译并执行程序完成所述模板文件目录类型的静态文件的打包。
27、一种实施方式中,所述定义一个变量,通过添加变量注释将所述静态文件存储目录嵌入到所述变量中,通过预设的打包方式,将所述变量进行打包,包括:
28、定义一个内置变量,将所述文件存储目录嵌入到所述内置变量中;
29、通过第三打包方式,将所述内置变量进行打包,所述第三打包方式包括:
30、通过所述应用程序的转换方法,将所述内置变量转换成文件系统对象,完成所述静态资源文件类型的静态文件的打包。
31、第二方面,本申请提供了一种静态文件打包装置,包括:
32、获取模块,用于获取应用程序的静态文件目录,根据所述静态文件目录确定静态文件类型;
33、创建模块,用于根据所述静态文件类型,在所述应用程序中创建与所述静态文件类型对应的静态文件存储目录;
34、存储模块,用于调用所述应用程序中的静态文件类型获取接口,获取每个类型的静态文件,将每个类型的所述静态文件存储到对应的所述静态文件存储目录;
35、打包模块,用于定义一个变量,通过添加变量注释将所述静态文件存储目录嵌入到所述变量中,通过预设的打包方式,将所述变量进行打包,得到打包文件,所述打包文件包括二进制文件。
36、第三方面,本申请提供了一种计算机设备,所述计算机设备包括存储器和至少一个处理器,所述存储器存储有计算机程序,所述处理器用于执行所述计算机程序以实施如第一方面所述的静态文件打包方法。
37、第四方面,本申请提供了一种计算机可读存储介质,所述计算机可读存储介质存储有计算机程序,所述计算机程序被执行时,实现如第一方面所述的静态文件打包方法。
38、本发明的实施例具有如下有益效果:
39、本发明提供的静态文件打包方法,通过不同的打包方式,将不同的静态文件打包成二进制文件,保证了应用程序的安全性,而且,将静态文件打包成二进制文件,部署也更加简单,降低了部署的成本。
40、为使本发明的上述目的、特征和优点能更明显和易懂,下文特举较佳实施例,并配合所附附图,做详细说明如下。
1.一种静态文件打包方法,其特征在于,包括:
2.根据权利要求1所述的静态文件打包方法,其特征在于,所述根据所述静态文件目录确定静态文件类型,包括:
3.根据权利要求1所述的静态文件打包方法,其特征在于,所述根据所述静态文件类型,在所述应用程序中创建与所述静态文件类型对应的静态文件存储目录,包括:
4.根据权利要求3所述的静态文件打包方法,其特征在于,所述调用所述应用程序中的静态文件类型获取接口,获取每个类型的静态文件,将每个类型的所述静态文件存储到对应的所述静态文件存储目录,包括:
5.根据权利要求4所述的静态文件打包方法,其特征在于,所述定义一个变量,通过添加变量注释将所述静态文件存储目录嵌入到所述变量中,通过预设的打包方式,将所述变量进行打包,包括:
6.根据权利要求4所述的静态文件打包方法,其特征在于,所述定义一个变量,通过添加变量注释将所述静态文件存储目录嵌入到所述变量中,通过预设的打包方式,将所述变量进行打包,包括:
7.根据权利要求4所述的静态文件打包方法,其特征在于,所述定义一个变量,通过添加变量注释将所述静态文件存储目录嵌入到所述变量中,通过预设的打包方式,将所述变量进行打包,包括:
8.一种静态文件打包装置,其特征在于,包括:
9.一种计算机设备,其特征在于,所述计算机设备包括存储器和至少一个处理器,所述存储器存储有计算机程序,所述处理器用于执行所述计算机程序以实施如权利要求1至7中任意一项所述的静态文件打包方法。
10.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质存储有计算机程序,所述计算机程序被执行时,实现如权利要求1至7中任意一项所述的静态文件打包方法。