当前位置: 首页 > news >正文

(Go Gin)基于Go的WEB开发框架,GO Gin是什么?怎么启动?本文给你答案

1. Go的三大WEB框架介绍

Gin:Go语言编写的Web框架,以更好的性能实现类似Martini框架的API

  • Gin是一个golang的微框架,封装优化,API友好,源码注释明确
  • 具有快速灵活、容错方便等特点
  • Gin是一个golang的微框架,封装比较优雅,API友好,源码注释比较明确,具有快速灵活,容错方便等特点
  • 对于golang而言,web框架的依赖要远比Python,Java之类的要小。自身的net/http足够简单,性能也非常不错
  • 借助框架开发,不仅可以省去很多常用的封装带来的时间,也有助于团队的编码风格和形成规范
package mainimport ("net/http""github.com/gin-gonic/gin"
)func main() {// 1.创建路由r := gin.Default()// 2.绑定路由规则,执行的函数// gin.Context,封装了request和responser.GET("/", func(c *gin.Context) {c.String(http.StatusOK, "hello World!")})// 3.监听端口,默认在8080// Run("里面不指定端口号默认为8080") r.Run(":8000")
}

Beego:开源的高性能Go语言Web框架

  • beego是一个快速开发Go应用的http框架;
  • beego开源用来快速开发API、Web、后端服务等各种应用,是一个RESTFul的框架,主要设计灵感来源于tornado、sinatra、flask这三个框架。
    • 它结合了Go本身的一些特性(interface、struct继承等)而设计的一个框架

Iris:最快的Go语言Web框架,完备的MVC支持

  • 快速、简单功能齐全的和非常有效的web框架。
  • 提供了一个优美的表现力和容易使用你的下一个网站或API的基础

在这里插入图片描述

2. 快速上手

新建一个Go项目

创建一个main.go文件,当作主入口文件

  • 关键点在于引入 "github.com/gin-gonic/gin"

main.go

package mainimport ("github.com/gin-gonic/gin""net/http"
)func main() {// 1.创建Gin路由r := gin.Default()// 2.绑定路由规则,执行的函数// gin.Context,封装了request和responser.GET("/ping", func(c *gin.Context) {c.JSON(http.StatusOK, "yes")})// 3. 监听端口,默认是8080;可以自定义端口r.Run(":8080")
}
  • 当运行main方法后,就代表web服务启动了

启动服务后,在浏览器中输入localhost:8080/ping就能可以访问了

  • 8080端口是通过 r.Run() 方法设置
  • /ping请求路由,通过r.GET/r.POSt/…函数设置

相关文章:

  • VGA/EDP/HDMI转LVDS,支持1920*1080,1920*1200@120HZ
  • 笔记:记一次使用EasyExcel重写convertToExcelData方法无法读取@ExcelDictFormat注解的问题(已解决)
  • wireshark从HEX转储导入使用方法
  • Uni-App 多端电子合同开源项目介绍
  • React类组件与React Hooks写法对比
  • STM32 I2C总线通信协议
  • Gartner魔力象限(Gartner Magic Quadrant)
  • 统计文件中单词出现的次数并累计
  • van-field组件设置为textarea属性被软键盘遮挡问题
  • Qt基础009(HTTP编程和QJSON)
  • Linux阻塞与非阻塞I/O:从原理到实践详解
  • js中get,set用法
  • 深度学习 视觉处理(CNN) day_02
  • 力扣-206.反转链表
  • SecMulti-RAG:兼顾数据安全与智能检索的多源RAG框架,为企业构建不泄密的智能搜索引擎
  • 在 Spring Boot 项目中如何使用索引来优化 SQL 查询?
  • 再见,物理删除!MyBatis-Plus @TableLogic 优雅实现逻辑删除
  • 【ESP32S3】 下载时遇到 libusb_open() failed 解决方案
  • python如何取消word中的缩进
  • Unity3D IK解算器技术分析
  • 《2025职场人阅读报告》:超半数会因AI改变阅读方向
  • 北京顺义:做好潮白河大桥事故善后处置,举一反三排查风险
  • 基辅响起密集爆炸声,乌方称俄军发动大规模导弹袭击
  • 北京市交通委通报顺平路潮白河大桥事故直接原因
  • 广东江门公布“小客车坠海致3死”事故评估报告,司机被判三年缓五年
  • 中方警告韩国公司不要向美军工企业出口含中国稀土矿物产品?外交部回应