专栏名称: OSC开源社区
OSChina 开源中国 官方微信账号
目录
相关文章推荐
程序员的那些事  ·  趣图:“AI 会取代你们的岗位啊!” ·  2 天前  
程序猿  ·  甲骨文正式发布VirtualBox ... ·  4 天前  
赛尔实验室  ·  2024全国知识图谱与语义计算大会暨知识图谱 ... ·  2 周前  
程序员小灰  ·  我发现凡是给offer的公司,面试时基本不问 ... ·  1 周前  
程序员小灰  ·  小灰的基金,终于回血了! ·  1 周前  
51好读  ›  专栏  ›  OSC开源社区

Go Web API 利器 Faygo|软件推荐

OSC开源社区  · 公众号  · 程序员  · 2017-03-04 08:21

正文

#点击图片,报名深圳源创会#


授权协议:Apache

开发语言:Google Go

操作系统:跨平台

软件作者:henrylee2cn

链接:https://git.oschina.net/henrylee/faygo



概述

Faygo 使用全新架构,是最合适开发API接口的Go Web框架。用户只需定义一个struct Handler,就能自动绑定、验证请求参数并生成在线API文档。


最新版本

版本号v1.0

安装要求:Go Version ≥1.8


快速使用


方式一:源码下载


方式二 部署工具 (Go to fay)


框架特性


● 一个 struct Handler 搞定多件事:

定义 Handler/Middleware

绑定与验证请求参数

生成 Swagger2.0 API 在线文档

数据库 ORM 映射


● Handler与Middleware完全相同,都是实现Handler接口(func或struct类型),共同构成路由操作链,只是概念层面的说法不同


● 支持多种网络类型:


● 支持单服务单监听、单服务多监听、多服务多监听等,多个服务的配置信息相互独立


● 基于 httprouter 开发高性能路由,支持链式与树形两种注册风格,支持灵活的静态文件路由(如DirFS、RenderFS、MarkdownFS等)


● 支持平滑关闭、平滑升级,提供fay工具进行新建项目、热编译、元编程


● 采用最强大的 pongo2 作为HTML渲染引擎


● 提供近似LRU的文件缓存功能,主要用途是静态文件缓存


● 跨平台的彩色日志系统,且同时支持console和file两种输出形式(可以同时使用)


● 提供Session管理功能


● 支持Gzip全局配置


● 提供XSRF跨站请求伪造安全过滤


● 大多数功能尽量使用简洁的ini进行配置来避免不必要的重新编译,并且这些配置文件支持自动补填默认值


● 提供 gorm、xorm、sqlx、directSQL、Websocket、ini 、http client 等很多常用扩展包


简单示例





推荐阅读

3 月 19 日深圳源创会报名正式启动!

2017 年不容错过的 10+ 个开源 Java 库

为什么说 LINQ 要胜过 SQL

Nginx 日志分析及性能排查

2017 年前端开发者必看学习清单

点击“阅读原文”查看更多精彩内容