Golang库学习笔记 Gin(三)
快速入门
今天,我们将要基于一个例子,学习如何使用GIN框架。
目录
文章目录
- 快速入门
- 目录
- 要求
- 安装
- 1.下载并安装 gin:
- 2.将 gin 引入到代码中:
- 3.(可选)如果使用诸如 http.StatusOK 之类的常量,则需要引入 net/http 包:
- 2.创建项目并且 cd 到项目目录中
- 3.使用 govendor 初始化项目,并且引入 gin
- 4.复制启动文件模板到项目目录中
- 5.启动项目
要求
Go 1.9 及以上版本
我试验的版本是1.15.2
go version go1.15.2 windows/amd64
安装
要安装 Gin 软件包,需要先安装 Go 并设置 Go 工作区。
1.下载并安装 gin:
$ go get -u github.com/gin-gonic/gin
如果遇上安装不了的情况,可以参阅这篇
golang 装包
go module管理
2.将 gin 引入到代码中:
import "github.com/gin-gonic/gin"
3.(可选)如果使用诸如 http.StatusOK 之类的常量,则需要引入 net/http 包:
import "net/http"
使用 Govendor 工具创建项目
### 1.go get govendor$ go get github.com/kardianos/govendor
2.创建项目并且 cd 到项目目录中
$ mkdir -p $GOPATH/src/github.com/myusername/project && cd "$_"
3.使用 govendor 初始化项目,并且引入 gin
$ govendor init
$ govendor fetch github.com/gin-gonic/gin@v1.3
4.复制启动文件模板到项目目录中
$ curl https://raw.githubusercontent.com/gin-gonic/examples/master/basic/main.go > main.go
5.启动项目
$ go run main.go
开始
不确定如何编写和执行 Go 代码? 点击这里.
首先,创建一个名为 example.go 的文件
$ touch example.go
接下来, 将如下的代码写入 example.go 中:
# 主程序包名
package main
# 导入的包
import "github.com/gin-gonic/gin"
# 主函数
func main() {
# 初始化一个Gin实例r := gin.Default()# 设置Get操作r.GET("/ping", func(c *gin.Context) {c.JSON(200, gin.H{"message": "pong",})})# 初始化服务r.Run() // 监听并在 0.0.0.0:8080 上启动服务
}
然后, 执行 go run example.go 命令来运行代码:
运行 example.go 并且在浏览器中访问 0.0.0.0:8080/ping
$ go run example.go
得到如下反馈,说明安装成功了。
[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 /ping --> main.main.func1 (3 handlers)
[GIN-debug] Environment variable PORT is undefined. Using port :8080 by default
[GIN-debug] Listening and serving HTTP on :8080
访问网站的结果如图。
Golang库学习笔记 Gin(三)相关推荐
- Golang库学习笔记 Gin(一)
GIN GIN 是Go语言的一个比较成熟的HTTP web 框架,运行速度很快. 目录 文章目录 GIN 目录 正文 如何使用 Gin? 如何为 Gin 做贡献? 正文 Gin 是一个用 Go (Go ...
- Golang 库学习笔记 Gin(二)
介绍 Gin 是一个用 Go (Golang) 编写的 web 框架. 它是一个类似于 martini 但拥有更好性能的 API 框架, 由于 http router,速度提高了近 40 倍. 如果你 ...
- Andorid中使用Jsoup解析库解析XML、HTML、Dom节点---第三方库学习笔记(三)
XML介绍: XML简介: XML,可扩展标记语言,标准通用标记语言的子集. 一种用于标记电子文件使其具有结构性的标记语言. 它可以用来标记数据.定义数据类型 是一种允许用户对自己的标记语言进行定义的 ...
- OpenCV学习笔记(三十一)——让demo在他人电脑跑起来 OpenCV学习笔记(三十二)——制作静态库的demo,没有dll也能hold住 OpenCV学习笔记(三十三)——用haar特征训练自己
OpenCV学习笔记(三十一)--让demo在他人电脑跑起来 这一节的内容感觉比较土鳖.这从来就是一个老生常谈的问题.学MFC的时候就知道这个事情了,那时候记得老师强调多次,如果写的demo想在人家那 ...
- 《Go语言圣经》学习笔记 第三章 基础数据类型
<Go语言圣经>学习笔记 第三章 基础数据类型 目录 整型 浮点数 复数 布尔型 字符串 常量 注:学习<Go语言圣经>笔记,PDF点击下载,建议看书. Go语言小白学习笔记, ...
- 数字图像处理学习笔记(三):ORB算法(尺度不变特征变换)Oriented FAST and Rotated BRIEF
数字图像处理学习笔记(三):ORB算法(尺度不变特征变换)Oriented FAST and Rotated BRIEF 一.概述 参考:特征点匹配+特征检测方法汇总 ORB的全称是Oriented ...
- QT学习笔记(三):Qt软件打包发布(QT5.8 _msvc2013_64+Win10_64)
QT学习笔记(三):Qt软件打包发布(QT5.8 _msvc2013_64+Win10_64) 1.编译方式介绍: 2.动态编译方式打包发布QT程序: 方法一:手动复制 方法二:使用工具 问题& ...
- ROS 学习笔记(三):自定义服务数据srv+server+client 示例运行
ROS 学习笔记(三):自定义服务数据srv+Server+Client 示例运行 一.自定义服务数据: 1.向功能包添加自定义服务文件(AddTwoInts.srv) cd ~/catkin_ws/ ...
- react取消捕获_React学习笔记(三)
React学习笔记(三),组件的生命周期 React中组件也有生命周期,也就是说也有很多钩子函数供我们使用, 组件的生命周期,我们会分为四个阶段,初始化.运行中.销毁.错误处理(16.3之后) 初始化 ...
最新文章
- Linux堆内存管理深入分析(上)
- extjs4.0视频教程下载
- python策略模式的应用_Head First 设计模式——策略模式(Strategy Pattern)——Python实现 | 学步园...
- Linux:如何获取打开文件和文件描述符数量
- android 布局设置背景的透明度
- 【牛客 - 330I】Applese 的回文串(结论题,类似编辑距离,dp)
- threejs基础示例
- StackOverflow热帖:Java整数相加溢出怎么办?Java8一步搞定~
- 《金字塔原理》学习笔记
- im源码 php,thinkphpim即时通讯源码
- reshape() 函数与 kron()函数的区别
- 华为防火墙nat技术之服务器映射
- html样式类collapse,[ CSS-CSS3 ] 史上最全CSS样式一览表
- 爬虫 第六讲 Scrapy框架
- 2023北京叶黄素展/北京视力矫正设备展/北京眼睛医学康复展
- 如何做好区块链社区?得社区者得天下
- 批量查找替换excel单元格中的软回车(alt + enter)
- 【openstack-rally】使用rally执行tempest api测试并导出测试报告
- 「数据游戏」:使用 ARIMA 算法预测三日后招商银行收盘价
- Apples Prologue(吃苹果问题) C++