GoFrame v1.9.3 发布,Go 应用开发框架
该版本实际为v2.0
的大版本发布,为避免go module
机制严格要求v2
版本以上需要修改import
并加上v2
后缀,因此使用了v1.9
版本进行发布。
新特性
- 新增
gf
命令行开发辅助工具:https://goframe.org/toolchain/cli - 新增
gres
资源管理器模块:https://goframe.org/os/gres/index - 重构
Session
功能,新增gsession
模块,WebServer
默认使用文件存储Session
:https://goframe.org/net/ghttp/session WebServer
新增中间件特性,并保留原有的HOOK设计,两者都可实现请求拦截、预处理等等特性:https://goframe.org/net/ghttp/router/middleware- 新增
gi18n
国际化管理模块:https://goframe.org/i18n/gi18n/index - 新增
gini
模块:https://goframe.org/encoding/gini/index WebServer
新增更便捷的层级路由注册方式:https://goframe.org/net/ghttp/group/levelgcmd
命令行参数解析模块重构,增加Parser
解析对象:https://goframe.org/os/gcmd/index- 新增
gdebug
模块,用于堆栈信息获取/打印:https://goframe.org/debug/gdebug/index
重大调整
- 去掉
1.x
版本中已经被标记为deprecated
的方法; - 调整
container
分类的容器模块,将默认并发安全参数调整为默认非并发安全; - 目录调整:
- 去掉
third
目录,统一使用go module
管理包依赖; - 将原有
g
目录中的模块移出到框架主目录,原有的g
模块移动到frame/g
目录; - 将原有
geg
示例代码目录名称修改为.example
;
- 去掉
功能改进
ghttp
- 改进
Request
参数解析方式:https://goframe.org/net/ghttp/request - 改进跨域请求功能,新增
Origin
设置及校验功能:https://goframe.org/net/ghttp/cors Cookie
及Session
的TTL
配置数据类型修改为time.Duration
;- 新增允许同时通过
Header/Cookie
传递SessionId
; - 新增
ConfigFromMap/SetConfigWithMap
方法,支持通过map
参数设置WebServer; - 改进默认的
CORS
配置,增加对常见Header
参数的默认支持; - 新增
IsExitError
方法,用于开发者自定义处理recover
错误处理时,过滤框架本身自定义的非异常错误; - 新增
SetSessionStorage
配置方法,用于开发者自定义Session
存储; ghttp.Request
新增更多的参数获取方法;
- 改进
gdb
- 增加对SQL中部分字段的自动转义(
Quote
)功能; - 增加对方法操作以及链式操作中的
slice
参数的支持; - 增加
SetLogger
方法用于开发者自定义数据库的日志打印; - 增加
Master/Slave
方法,开发者可自主选择数据库操作执行的主从节点; - 增加对
mssql/pgsql/oracle
的单元测试; - 在
debug
模式支持完整带参数整合的SQL语句调试打印; - 增加了更多的功能方法;
- 增加对SQL中部分字段的自动转义(
glog
- 新增
Default
方法用于获取默认的Logger
对象; - 新增
StackWithFilter
方法用于自定义堆栈打印过滤; - 增加了更多的功能方法;
- 新增
gfile
- 部分方法名称调整:
Get/PutBinContents
修改为Get/PutBytes
; - 增加
ScanDirFile
方法,用于仅检索文件目录,支持递归检索; - 增加了更多的功能方法;
- 部分方法名称调整:
gview
- 新增
SetI18n
方法用于设置视图对象自定义的gi18n
国际化对象; - 新增对
gres
资源管理器的内置支持;
- 新增
gcompress
- 增加
zip
算法的文件/目录的压缩/解压方法; - 文件/目录压缩参数支持多路径;
- 增加
gconv
- 改进对
[]byte
数据类型参数的支持; - 新增
Unsafe
转换方法,开发者可在特定场景下使用,提高转换效率; - 新增
MapDeep/StructDeep/StructsDeep
方法,支持递归struct
转换;
- 改进对
gjson/gparser
- 改进类型自动识别功能;
- 新增
LoadJson/LoadXml/LoadToml/LoadYaml/LoadIni
方法用于自定义的数据类型内容加载; - 增加了更多的功能方法;
gerror
- 改进错误堆栈获取逻辑;
- 增加了更多的功能方法;
gmap/garray/gset/glist/gvar
- 改进并发安全基准测试脚本;
- 修改
garray.StringArray
为garray.StrArray
; - 增加了更多的功能方法;
gdes
- 规范化修改方法名称;
gstr
- 增加
Camel/Snake
相关命名转换方法; - 增加了更多的功能方法;
- 增加
genv
- 增加了更多的功能方法;
Bug Fix
- 修复
gvalid
校验struct
时的tag
自定义错误失效的问题; - 修复
gcfg
配置管理模块在特定情况下的内容类型自动识别失败问题; - 修复
gqueue
在用户主动关闭队列时的并发安全问题; - 修复
session
在开发者设置的TTL
过大时的整型变量溢出问题;
GF(Go Frame)
是一款模块化、高性能、生产级Go应用开发框架。提供了常用的核心开发组件,如:缓存、日志、文件、时间、队列、数组、集合、字符串、定时器、命令行、文件锁、内存锁、对象池、连接池、资源管理、数据校验、数据编码、文件监控、定时任务、数据库ORM、TCP/UDP组件、进程管理/通信、 并发安全容器等等。并提供了Web服务开发的系列核心组件,如:Router、Cookie、Session、Middleware、服务注册、配置管理、模板引擎等等,支持热重启、热更新、多域名、多端口、多服务、HTTPS、Rewrite等特性。
特点
- 模块化、松耦合设计;
- 模块丰富,开箱即用;
- 详尽的开发文档及示例;
- 完善的本地中文化支持;
- 致力于项目的通用方案;
- 更适合企业及团队使用;
- 更多请查阅文档及源码;
安装
go get -u github.com/gogf/gf
推荐使用 go.mod
:
require github.com/gogf/gf latest
限制
golang版本 >= 1.10
架构
文档
开发文档:https://goframe.org
接口文档:https://godoc.org/github.com/gogf/gf
使用
package main import ( "github.com/gogf/gf/frame/g" "github.com/gogf/gf/net/ghttp" ) func main() { s := g.Server() s.BindHandler("/", func(r *ghttp.Request) { r.Response.Write("Hello World") }) s.Run() }
协议
GF
使用非常友好的 MIT 开源协议进行发布,永久100%
开源免费。
低调大师中文资讯倾力打造互联网数据资讯、行业资源、电子商务、移动互联网、网络营销平台。
持续更新报道IT业界、互联网、市场资讯、驱动更新,是最及时权威的产业资讯及硬件资讯报道平台。
转载内容版权归作者及来源网站所有,本站原创内容转载请注明来源。
- 上一篇
PHPRAP 2.0.4 发布,新增字段模板功能
PHPRAP,是一个基于 YII2 框架开发的 PHP 轻量级开源 API 接口文档管理系统,致力于减少前后端沟通成本,提高团队协作开发效率,打造 PHP 版的 RAP。 更新记录 【新增】新增项目字段模板功能,项目模板里的参数会在新建接口时默认自动填充到接口字段里,减少公共参数的手工录入成本。 【新增】项目模板 POST 请求新增 form-data、x-www-form-urlencoded、raw 方式 【新增】接口字段 POST 请求新增 form-data、x-www-form-urlencoded、raw 方式 【新增】接口调试 POST 请求新增 form-data、x-www-form-urlencoded、raw 方式 【修复】修复添加字段时部分浏览器字段类型和是否必填下拉框显示不全的 BUG 【修复】添加字段按钮图标更换 【优化】增加响应参数不能为空的判断,header和请求参数可以为空 【优化】在线调试响应时间单位由秒改成毫秒
- 下一篇
.NET Core 3.0 稳定版发布
一年一度的 .NET 开发者盛会 .NET Conf 2019 在昨日(举办时间为 9.23-9.25)正式开始了。大会第一天最重磅也是最激动人心的消息莫过于.NET Core 3.0 稳定版的发布。.NET 项目管理总监Scott Hunter 在大会宣布了这则消息,并在主题演讲环节围绕 .NET Core 3.0的新特性和社区展开了介绍。 .NET Conf 2019直播地址:https://www.dotnetconf.net/ 作为一个大版本更新,.NET Core 3.0 引入了大量改进和新特性,例如新增加的 Windows Forms 和 WPF、新的 JSON API、对ARM64 架构的支持,以及全面提升的性能。对了,C# 8 也是 .NET Core 3.0 本次更新的一部分,其中包括可空引用类型(nullable)、异步流(AsyncStreams)和更多的模式。 除了 C# 8,.NET Core 3.0 的更新内容还包括F# 4.7,此版本主要是对语法进行改进,并将目标平台升级至面向.NET Standard 2.0。 .NET 团队表示.NET Core 3....
相关文章
文章评论
共有0条评论来说两句吧...
文章二维码
点击排行
推荐阅读
最新文章
- CentOS关闭SELinux安全模块
- SpringBoot2初体验,简单认识spring boot2并且搭建基础工程
- SpringBoot2整合Redis,开启缓存,提高访问速度
- MySQL8.0.19开启GTID主从同步CentOS8
- Hadoop3单机部署,实现最简伪集群
- 设置Eclipse缩进为4个空格,增强代码规范
- CentOS7,CentOS8安装Elasticsearch6.8.6
- Linux系统CentOS6、CentOS7手动修改IP地址
- CentOS6,7,8上安装Nginx,支持https2.0的开启
- Windows10,CentOS7,CentOS8安装MongoDB4.0.16