Go语言框架Gin基础教程一:创建项目
## 简介 本文用于记录 `Go` 语言的轻量级Web框架 `Gin` 的基本使用。 接下来老狗将从
渲染中...
## 简介
本文用于记录 `Go` 语言的轻量级Web框架 `Gin` 的基本使用。
接下来老狗将从零开始搭建一个简单的项目环境,然后使用 `Gin` 编写一些Web服务器相关代码,包括创建服务、Token拦截、参数接收等基本操作。
注意:在进行下面的操作前,请保证你已经正确安装和配置 `Golang` 的开发环境。
<!-- more -->
## 创建项目
### 创建文件夹
```bash
# 创建文件夹
mkdir gin-server
# 进入文件夹
cd gin-server
```
> PS:也可以用鼠标操作
### 初始化项目
```bash
# 在 gin-server 文件夹内,用命令行终端运行:
go mod init gin-server
```
> 使用 `go mod` 初始化 `gin-server` 项目,成功后,会出现提示:`go: creating new go.mod: module gin-server` ,并且 `gin-server` 文件夹内会出现 `go.mod`文件。
### 安装`gin`
```bash
# 用命令行终端运行:
go get github.com/gin-gonic/gin
```
> 该命令将下载 `gin` 相关代码包
### 创建入口文件
> 在 `gin-server` 文件夹内创建 `main.go` 文件,并填入以下代码:
```go
// go语言规范,必须程序入口必须是在 package main 包内
package main
// 引用 fmt 和 gin
import (
"fmt"
"github.com/gin-gonic/gin"
)
func main() {
// 创建路由
router := gin.Default()
// 路由分组
api := router.Group("/gin")
// 开放接口
api.GET("/hello", hello)
// 以上两行代码相当于:router.GET("/gin/hello", hello)
// 启动服务并设置端口为 8080
err := router.Run(":8080")
if err != nil {
fmt.Println("Error: ", err)
}
}
// 接口参数必须是 c *gin.Context
func hello(c *gin.Context) {
fmt.Println("hello gin")
}
```
## 运行测试
通过以上操作,你已经使用 `gin` 创建了一个最基础的 `web` 服务,并开放了一个 `/gin/hello` 接口。
### 运行
```bash
# 在gin-server文件夹内,用命令行终端运行:
go run main.go
```
运行成功后,会出现相应日志:
```console
[GIN-debug] [WARNING] Creating an Engine instance with the Logger and Recovery middleware already attached.
[GIN-debug] [WARNING] Running in "debug" mode. Switch to "release" mode in production.
- using env: export GIN_MODE=release
- using code: gin.SetMode(gin.ReleaseMode)
[GIN-debug] GET /gin/hello --> main.hello (3 handlers)
[GIN-debug] [WARNING] You trusted all proxies, this is NOT safe. We recommend you to set a value.
Please check https://pkg.go.dev/github.com/gin-gonic/gin#readme-don-t-trust-all-proxies for details.
[GIN-debug] Listening and serving HTTP on :8080
```
根据提示,已经开发地址为 `/gin/hello` 的 `GET` 接口,且端口为 `8080`。
**注意:启动成功后不要关闭该终端,否则将会关闭该服务!**
### 测试
可以通过浏览器输入地址 `http://localhost:8080/gin/hello` 发送请求,也可以使用命令行 `curl` 工具发送请求:
```bash
# 在任意地方再开一个命令行终端,并运行:
curl http://localhost:8080/gin/hello
```
请求发送后,查看原来启动 服务的终端窗口,可以看到输出:
```bash
hello gin
[GIN] 2024/04/04 - 12:06:09 |[97;42m 200 [0m| 0s | ::1 |[97;44m GET [0m "/gin/hello"
```
其中输出 `hello gin` 则可认为接口成功。
## 总结
1. 本文运行、测试等操作都建议使用命令行来完成;
2. `go mod` 是 Go 语言提供的依赖管理工具,用于管理 Go 项目的依赖关系和版本信息;
3. `router := gin.Default()` 用于创建接口根节点;
4. `api := router.Group("/gin")` 用于创建 `router` 的下级节点,可以一层层向下扩展节点。
通过本文的学习,你已经搭建了一个最简单的Http服务,下一篇,将介绍一下接口封装:【[Go语言框架Gin基础教程二:接口封装](https://oldmoon.top/post/gin2)】
## 赞助请求V3
**建站因为热爱,生活需要Money,请屏幕前的大佬动动您发财的小手,点击一次以示鼓励,祝您生活愉快!**
<!-- 文章内嵌广告位 -->
<div class="article-ads"></div>
> PS:就目前的访问量,即便每个访客都点一次广告,收入也不足以支付运营成本。`如果看不到广告,可能是网络原因或被拦截了,那就算了吧。再次祝您生活愉快~~`END
评论
登录后查看和发表评论
前往登录