TaskBuilder客户端请求前端静态文件的流程

任擎服务器支持支持以下三种静态文件: 4.1.1纯静态文件 纯静态文件是指存放在tasgine\web目录或其子目录下,可以直接在浏览器里加载或显示的文件,包括HTML文件、CSS文件、前端JS文件、图片、音视频文件等,客户端需要访问这种文件时,向任擎服务器发起请求,并提供这些文件的URL地址,任擎就会直接读取这些文件的内容,然后返回给客户端,客户端再加载和显示。 例如任擎服务器的ip为192.168.1.100,监听的网络端口为8001,如果要访问该服务器上的tasgine\web\app\demo\index.html文件,则URL地址为: http://192.168.1.100:8001/app/demo/index.html 从上面的路径可知,在URL路径里,只需要保留文件实际路径的tasgine\web后面的路径即可,但要把斜杠 \ 换成反斜杠 / ,任擎默认会从tasgine\web目录开始查找静态文件。 4.1.2 tfp文件 扩展名为.tfp的文件是用TaskBuilder设计制作的前端页面文件,文件的内容为JSON格式,客户端无法直接解析执行这种格式,需要由任擎服务器先将其编译成HTML文件,然后再发送给客户端,客户端才能加载显示,整个请求响应的流程如下图所示: 图片 1 从上图可知,当有客户端访问tfp页面时,任擎会判断在tasgine\web\dist目录及其子目录内是否已经有该文件编译后的HTML文件,如果已经存在,而且创建时间晚于tfp文件的最后修改时间,则直接将该HTML文件的内容返回给客户端。否则,任擎会对该tfp文件进行编译,生成对应的HTML代码,并将该页面里各种组件所需的js和css文件的代码都打包压缩后合并到该HTML文件中,然后将该文件的内容保存到tasgine\web\dist对应的文件夹中,并返回给客户端,客户端再进行加载和显示。 4.1.3附件 如果是通过tfp的文件上传或图片上传组件上传的附件文档,则不能通过在URL里使用文件路径的方式来直接访问,因为为了保障服务器安全和防止信息泄露,所有附件都是保存在tasgine\files\组织代码\应用代码\上传年月\ 这样的目录里,而不是放在tasgine\web目录里,而且,文件名都变成了 附件代码.file 的形式。附件代码是在上传附件时自动生成的一个32位的UUID()字符串,并且和附件的其他信息一起保存到了sys_app_attach表中,包括附件名称、类型、大小、保存路径、应用代码、应用数据记录编号、上传人id、上传时间等。 如果要下载附件,请采用以下形式的URL: http://服务器ip:服务器端口/Download?fileCode=附件代码 当客户端给任擎服务器发送上述格式的URL请求时,任擎会根据URL里的附件代码去sys_app_attach表中查询附件的信息,然后再根据其保存路径读取该附件的实际内容,然后发送给客户端。如果没有找到匹配的附件信息,则返回错误。 如果附件是图片,而且要在浏览器里直接显示,而不是下载,则可以使用下述URL: http://服务器ip:服务器端口/Download?fileCode=附件代码&showImage=true

点赞
收藏

评论区

加载中...

相关推荐

springmvc 静态文件访问

//配置静态文件访问路径,防止被拦截器拦截注:\\表示匹配该路径下的所有路径<mvc:annotationdriven/<mvc:resourceslocation\"/WEBINF/static/js/"mapping\"/js/\\"/

.net web core 如何编码实现文件上传功能

关于我前言在进行Web前后端分析开始时,我们经常会碰到文件上传的需求。上传用户头像,上传认证材料、审核材料等,这些都可以归类为文件上传功能。今天主要把自己在开发过程中的心得进行一个整理,供大家学习。开启静态文件中间件默认情况下,静态文件(如HTML、CSS、图像和JavaScript)是ASP.NETCore应用直接提供给客户端的资产。开启静态

thinkphp集成系列之阿里云oss

web2.0时代;除了纯信息展示类的网站;基本都是有文件上传功能的;最不济你得让用户换个头像吧;但是随着业务的发展;如果上传的文件都和网站程序源代码放在一起;那是有相当多的弊端的;1:静态文件会占用大量带宽;2:服务器的成本略高;常规的做法是把php源代码放到一台服务器上;图片等静态文件放在另一台服务器上;当一个神奇的“云”时代的到来

Apache优化——日志管理 11.22 访问日志不记录静态文件 11.23 访问日志切割 11.24 静态元素过期时间

11.22访问日志不记录静态文件网站大多元素为静态文件,如图片、css、js等,这些元素可以不用记录编辑虚拟主机配置文件“httpdvhosts.conf”:root@cham002~vim/usr/local/apache2.4/conf/extra/httpdvhosts.conf

LAMP架构之访问日志的设置及切割、静态文件失效设置

本文索引访问日志不记录静态文件访问日志切割静态文件过期时间访问日志不记录静态文件为什么要这样设置网站大多为静态网页,网页内部的图片、css文件等同样有其网址链接,如果不设置,这些无效的信息也将被存入访问日志中,会导致访问日志文件大小快速增加,占用大量存储空间。我们可以通过设置不记录某

TaskBuilder低代码开发必须的三种文件—后台服务文件

本文所说的后台服务(Service)是指在服务器电脑上由任擎(tasgine)软件执行的代码,它可以根据客户端发送的请求数据,进行数据库增删改查、数据导入导出、文件上传下载、文件读写等操作,并向客户端返回处理结果。后台服务运行时是没有界面的,占用的是服务器