【FastServer】基于HP深度封装的服务器框架(03-11)
本帖最后由 Coco 于 2024-3-11 17:32 编辑官方文档地址:https://fastserver.cc
一、框架特性
[*]纯后端服务器(适用于前后端分离的项目)
[*]简单的获取提交参数
[*]简单的响应方式
[*]...
[*]简单的数据库调用
[*]支持无感热更
[*]免费
更新内容2024/03/11
[*]框架
[*]优化 JSON对象 和 JSON数组 取文本
[*]添加方法 FS_取JWT有效时长
[*]修复 取小数类型参数 时,默认最小值范围错误的问题
[*]修复CPU占用的问题
[*]增强框架并发能力
[*]内置Redis服务添加异常重启功能在使用内置的Redis服务时,如果redis服务意外关闭,会尝试重新启动
[*]完善默认日志添加单个请求的唯一ID。解决通过日志查找问题时,无法区分请求的问题在未设置精简日志的情况下,为输出 客户端请求的数据,和响应的数据
[*]日志格式改为UTF8
[*]查看日志窗口 同步修改为UTF8,并添加不同类型颜色的自定义
[*]修复 查看日志窗口 存下线程残留
[*]修复用户缓存Redis过期时间未生效的问题
[*]Redis本地服务添加检查,如果Redis异常退出会重新启动
[*]添加 请求.修改提交数据 。用于前置拦截器解密数据
[*]火山PC插件
[*]JSON解析工具
[*]右键插入API模板
[*]更新框架
[*]主程序
[*]加载项目时,添加对子项目框架版本的检测,防止因为版本不同导致服务崩溃
[*]开发工具(数据库表映射)
[*]添加 数据库_插入或更新 接口
2023/12/25
[*][开发工具] [优化] 字段读写,不再直接操作json对象,改为需要的时候更新json对象数据
[*][开发工具] [优化] 修复存在的注入问题
[*][开发工具] [新增] 数据库_cha询By主键 、数据库_cha询By字段 添加排序规则字段
[*][开发工具] [新增] 数据库_删除By筛选、数据库_删除By字段
[*][开发工具] [修改] 数据库cha询结果统一返回 长整数
[*][框架] 数据库动态参数,添加对JSON数组的支持
2023/12/17
[*]框架
[*][修复] 请求.取用户Session 取值返回空文本
[*][修复] Redis缓存没生效
[*][新增] 数据库执行SQL语句添加 动态参数
[*][新增] 数据库删除命令,筛选条件添加 动态参数
[*][新增] 数据库更新命令,筛选条件添加 动态参数
[*][新增] 执行SQL语句添加动态参数
[*][新增] 请求超过并发时,最多排队并发x3的请求数(暂时)
[*]开发工具
[*]同步框架修改,更新生成代码结构
2023/12/14
[*]框架
[*][修复] 取 form-data 时,如果文件类型数据没有传递 content-type 会崩溃
[*][修复] 服务器端口设置大于60000时,提示端口不能大于65535
[*][修复] 使用redis时,密码只能输入数字
[*][新增] 图片_转换类型_xxx()
[*][新增] 请求.取用户Session() ,代表当前用户的令牌,它是唯一的
[*][新增] 保存服务器默认配置按钮服务器第一次运行时,会尝试加载目录下的 default.ini 配置文件解决部署服务时,需要手动修改一遍配置的问题加载成功后会删除该文件,防止信息泄露
[*][修复] 修复服务器配置中,响应数据结构保存失败重启服务器后,配置恢复为默认字段
[*][修复] 数据库cha询结果数据类型异常,整数数据返回为文本
[*]开发工具
[*][修复] 数据库注释里有 " 的时候,生成代码格式错误
2023/11/30
[*]新增功能 API接口权限
[*]新增功能 拦截器
[*]新增接口:取响应Status、取响应Msg、取响应自定义数据、取动响应HTTP状态码
2023/11/07
[*][框架][新增] 添加框架日志
[*][框架][新增] 添加编译后命令。用于生成配置文件,优化加载子项目逻辑
[*][框架][新增] 框架默认包含一个 /ping 请求,响应内容为pong,可用于判断服务器是否正常运行
[*][框架][新增] 添加 FS_取端口号 接口。接口改名统一代码规范,注册API接口 => FS_注册API接口,添加计划任务 => FS_添加计划任务
[*][框架][新增] 添加全局函数。FS_取数据库连接:在非API接口中取数据库连接,比如计划任务;FS_是否正在运行中:判断当前服务器是否已启动;FS_取端口号:获取当前服务使用的端口
[*][框架][修复] Base64编码Ex 和 Base64解码Ex 导致内存泄露
[*][框架][修复] 静默连接设置未生效
[*][框架][修复] JSON对象Ex和JSON数组Ex,取对象、取数组 类似操作的时会崩溃
[*][框架][修复] 网页访问Ex 在并发的情况下,可能出现无法发送的请求
[*][框架][修复] 请求包体大于限制时,响应的status字段名错误
[*][框架][优化] 发送钉钉提醒不再阻塞
[*][主程序][修复] 启动服务时,如果服务器端口被占用,修改端口后需要重新运行服务器才行
[*][主程序][优化] 优化收集子项目逻辑
[*][主程序][优化] 优化自动逻辑,现在可以在1秒内判断子项目已经生成结束
[*][开发工具][优化] 因为发送钉钉提醒,导致重启服务拖延了部分时间的问题
2023/10/13
[*][新增] API接口开发工具,用于快速生成API接口模版,节省大量时间
2023/10/11
[*]框架
[*][优化] 基于HPSocket整体重构
[*][新增] Redis缓存
[*][新增] Mysql参数化防注入
[*][新增] 网络认证_BasicAuthEx 全局类(生成令牌、验证令牌)
[*][优化] 前端没有传递content-type时,默认以json的方式解析
[*][新增] 添加RESTful支持
[*][新增] 添加 时间_取零点时间Ex
[*][新增] 响应 添加不同错误的方法
[*]主程序
[*]添加开发和发布两种运行模式
[*]添加远程服务器管理
[*]添加推送版本
[*]开发工具
[*]移除QQ群验证
2023/08/04
1. 移除了没有注册API接口的 FastServer 欢迎页面
2. 优化缓存逻辑,不再每个用户生成一个缓存文件
3. 优化部分框架逻辑
4. 修复在日志.普通等方法传参时,如果参数是个 返回文本型的函数(),在关闭日志时,该函数没有执行的问题
5. 子项目添加实时日志查看
2023/07/28
1. 修复子项目依赖其他dll的时候,主项目未能正确加载DLL
2. 新增 `网页访问Ex_FS` 和 `网页访问类Ex_FS_响应数据` 用于EXE和FS进行交互
3. 主程序添加框架版本校验
4. 修复关闭程序时,最后几条日志可能没写完
5. 修复子项目中如果调用 日志.初始化,主程序卸载DLL时会崩溃
6. 新增EXE与FS交互例子
2023/07/26
1. 修复 请求.取参数_JSON数组 没有正确返回内容
2. 修复 一个跨域问题-浏览器无法将Cookie传发给后端
3. 修复 主程序设置的监控目录下如果有多个_int目录,只会收集第一个_int目录内的子项目
4. 新增 日志输出窗口
2023/07/21
主程序
1.修复收集项目目录时,如果存在多个_int目录时,只收集一个的问题
2.数据库配置现在可跳过了
3.新增手动收集版本功能
框架
1.JSON对象、JSON数组 添加替换路径命令,作用是在不修改内容的情况下,修改键名。用于响应时敏感数据改字段名
2.JSON对象、JSON数组 统一路径格式下的命名规则,“//a.b”。解决路径模式下,取数组格式错误时会崩溃的问题
2023/07/20
主程序&框架
1. 修复跨域问题 (手滑第二次运行服务器时没有初始化)
2. 修复用户缓存取不到值
开发工具
1. 数据库结构映射:修复数据库 tinyint 数据类型错误
2. 数据库结构映射:修复更新命令表名错误
3. 数据库结构映射:新增 `数据库_cha询所有` 方法
4. 数据库结构映射:`到JSON对象` 和 `到JSON数组` 新增指定导出字段、指定删除字段,用于响应数据时,只能返回部分字段的情况
5. 数据库结构映射:cha询By主键,主键的名字改为首字母大写
2023/07/191. 新增 Base32编码Ex、Base32解码Ex 命令2. 新增 身份认证TOTP类Ex,可用于谷歌OTP身份认证3. 新增 二维码_生成图片Ex、二维码_生成文本4. 新增 Headers类Ex,方便Header操作5. 修复 Cookies类Ex.添加Cookie2() 方法异常6. 完善 JWT相关设置,可以自定义保存位置,可以自定义JWT保存字段名7. 修复 只有在调用 发送200 时才响应了新的JWT8. 添加 响应数据结构 字段名自定义功能9. 发布FastServer主程序预览版,支持开发过程中热更服务器
2023/07/141. 完善用户缓存令牌,请求.JWT 里不会再出现 fscid 字段2. 新增 yan证码_生成v1Ex3. 新增对 响应数据结构 字段名自定义
2023/07/131. 新增用户缓存,无关乎用户是否登录2. 新增全局缓存,不同API、DLL之间共享缓存
2023/07/111. 添加接口 时间_秒转持续时间
2. 修复启动服时,端口占用后无法修改端口重新连接
3. 修复取 请求.取URL参数_XXX 时,url包含 & = 导致崩溃
4. 端口设置持久化,之前设置端口后,重新运行端口还是10001
5. 修复数据库插入数据失败时,没有返回错误文本
6. 开发工具 开放生成数据库表结构的映
2023/07/04
[*]修复因DLL没有加载结束调用函数导致崩溃
[*]修复系统环境缺少依赖dll,导致无法启动服务器
2023/06/29
[*]jwt添加接口:删除、清空
[*]cookie添加接口:删除Cookie、删除所有Cookies
[*]添加 发送消息提醒 全局接口,可用于特殊逻辑的监控
[*]添加 钉钉提醒类Ex(异步队列,不会触发频率限制)
[*]简化 API接口 的注册和实现
2023/06/28
[*]修复 JWT 取值异常
[*]修复 数据库命令执行失败的情况下,错误原因文本为空
[*]添加 API接口 在开启登录验证后,会触发统一的登录验证事件
PS: 使用开发工具更新,更新后如果崩溃先清理解决方案
static/image/hrline/line1.png
开发声明:本框架基于FOF二次开发
二、安装框架
[*]运行开发工具,选择火山PC安装目录
[*]点击对比更新
[*]重新运行火山PC,创建 FastServer 项目
三、一个简单的GET方法
1. 注册API接口
2. 接口实现
三、一个简单的POST接口
1. 注册接口
2. 接口实现
四、一个简单的上传文件接口
1. 注册API接口
2. 接口实现
五、数据库相关
1. 自动根据表生成对应的表结构和常用方法
2. 一个用户cha询的代码
6666大佬加油,多出点教程 不骄不傲,给你点赞。 websocket服务支持 用不上帮顶 泰裤辣 谢谢分享!!! ;P;P;P;P;P;P;P FastServer 一个简单高效的服务端框架 支持大佬