一个面向 TypeScript 和 JavaScript 的渐进式 Node.js 服务端框架,用于构建高效、可扩展的应用。
gin-gonic/gin
基于 Go 语言的高性能 HTTP Web 框架,API 风格类似 Martini,适用于 REST API、Web 应用和微服务。
- Star
- 89,394
- Fork
- 8,777
- 未关闭 Issue
- 806
- 最近提交
- 11天前
这是什么?
Gin 是一个用 Go 编写的 HTTP Web 框架,API 风格与 Martini 相近,路由部分基于 httprouter 实现。项目主要面向 REST API、Web 应用和微服务开发。
框架提供零内存分配的路由、中间件机制(可用于认证、日志、CORS 等),以及分组路由和共享中间件的能力。请求的 JSON 数据可以自动绑定和校验,响应支持 JSON、XML、HTML 模板等多种渲染方式。内置的 recovery 中间件可以避免 panic 导致服务进程崩溃。
使用 Gin 需要 Go 1.26 或更高版本,通过 Go 模块导入即可安装。官方文档提供多种语言版本,另有示例仓库以及 gin-contrib 中间件集合。
核心功能
- 01基于 httprouter 思路的零内存分配路由
- 02类似 Martini 的 API,支持路由分组
- 03中间件机制,可用于认证、日志、CORS 等场景
- 04内置 recovery 中间件,防止 panic 导致服务崩溃
- 05支持 JSON 请求绑定与校验,并可渲染 JSON、XML、HTML
适用场景
- 用 Go 构建高吞吐量的 REST API
- 开发需要处理大量并发请求的微服务
- 用较少样板代码快速搭建 Web 服务原型
快速上手
- 1
安装 Go 1.26 或更高版本
- 2
在代码中导入 Gin,构建时 Go 会自动获取
import "github.com/gin-gonic/gin" - 3
将示例保存为 main.go 并运行
go run main.go - 4
访问 http://localhost:8080/ping 查看响应
使用前须知
- 需要 Go 1.26 或更高版本。
标签
常见问题
- gin 是什么?
- 基于 Go 语言的高性能 HTTP Web 框架,API 风格类似 Martini,适用于 REST API、Web 应用和微服务。 Gin 是一个用 Go 编写的 HTTP Web 框架,API 风格与 Martini 相近,路由部分基于 httprouter 实现。项目主要面向 REST API、Web 应用和微服务开发。
- gin 可以免费使用吗?用的什么许可证?
- gin 以 MIT 许可证开源。用于商业产品前,请先确认许可证条款。
- gin 还在维护吗?
- 活跃维护中。gin 最近一次提交是在 2026年10月10日。
- gin 适合用来做什么?
- 用 Go 构建高吞吐量的 REST API 开发需要处理大量并发请求的微服务 用较少样板代码快速搭建 Web 服务原型
- gin 怎么安装和运行?
- 安装 Go 1.26 或更高版本 在代码中导入 Gin,构建时 Go 会自动获取: import "github.com/gin-gonic/gin" 将示例保存为 main.go 并运行: go run main.go 访问 http://localhost:8080/ping 查看响应
- 在哪里获取 gin?
- 源代码和安装说明在 GitHub 上:https://github.com/gin-gonic/gin
概要由 AI 根据项目 README 生成;GitHub 数据每日更新。
相关项目
7.7万8579TypeScriptMIT更新于 4小时前
Apache Dubbo 的 Java 实现,一个用于构建 RPC 通信与微服务的框架。
4.2万2.6万JavaApache-2.0更新于 昨天
受 Express 启发、基于 fasthttp 构建的 Go 语言 Web 框架,用于开发 REST API 和 Web 服务。
4万2054GoMIT更新于 前天
一个鼓励快速开发与简洁务实设计的高级 Python Web 框架。
9.1万3.7万PythonBSD-3-Clause更新于 10小时前
基于 Django 构建 Web API 的工具包,提供序列化、认证、视图集和可浏览的 API 界面。
3万7091PythonOther更新于 10小时前
一个轻量的 ASGI 框架与工具包,用于用 Python 构建异步 Web 服务。
1.3万1383PythonBSD-3-Clause更新于 前天