网站首页 > 技术文章 正文
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文件,然后再发送给客户端,客户端才能加载显示,整个请求响应的流程如下图所示:
从上图可知,当有客户端访问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
猜你喜欢
- 2025-02-04 联科云创申请优化Web页面字体文件大小专利,降低前端加载性能消耗
- 2025-02-04 独立开发者产品日刊:AI视频编辑器、代码搜索工具、Figma 插件
- 2025-02-04 IM客服系统(2)活用用户体验要素进行前端设计
- 2025-02-04 盘点13个优秀前端测试开源框架大全
- 2025-02-04 梳理React常考面试题很全面(react面试题2024)
- 2025-02-04 2023年前端开发者需要掌握的技术和框架有哪些?
- 2025-02-04 Node.js 是怎么找到模块的?(nodejs自带模块)
- 2025-02-04 2020年Javascript 前端框架google搜索排名
- 2025-02-04 树形结构!别再用递归实现了这才是最佳的方案;更快更强更好用
- 2025-02-04 Web前端基础:二叉查找树、搜索树的应用
你 发表评论:
欢迎- 572℃几个Oracle空值处理函数 oracle处理null值的函数
- 569℃Oracle分析函数之Lag和Lead()使用
- 554℃Oracle数据库的单、多行函数 oracle执行多个sql语句
- 550℃0497-如何将Kerberos的CDH6.1从Oracle JDK 1.8迁移至OpenJDK 1.8
- 549℃Oracle 12c PDB迁移(一) oracle迁移到oceanbase
- 540℃【数据统计分析】详解Oracle分组函数之CUBE
- 529℃最佳实践 | 提效 47 倍,制造业生产 Oracle 迁移替换
- 523℃Oracle有哪些常见的函数? oracle中常用的函数
- 最近发表
- 标签列表
-
- 前端设计模式 (75)
- 前端性能优化 (51)
- 前端模板 (66)
- 前端跨域 (52)
- 前端缓存 (63)
- 前端react (48)
- 前端aes加密 (58)
- 前端脚手架 (56)
- 前端md5加密 (54)
- 前端富文本编辑器 (47)
- 前端路由 (61)
- 前端数组 (73)
- 前端js面试题 (50)
- 前端定时器 (59)
- Oracle RAC (73)
- oracle恢复 (76)
- oracle 删除表 (48)
- oracle 用户名 (74)
- oracle 工具 (55)
- oracle 内存 (50)
- oracle 导出表 (57)
- oracle 中文 (51)
- oracle的函数 (57)
- 前端调试 (52)
- 前端登录页面 (48)
本文暂时没有评论,来添加一个吧(●'◡'●)