blog icon indicating copy to clipboard operation
blog copied to clipboard

Gin 简明教程 | 极客兔兔

Open geektutu opened this issue 4 years ago • 13 comments

https://geektutu.com/post/quick-go-gin.html

Gin教程,Gin框架教程,Gin快速入门,Gin中文教程,Gin中文文档,Golang Web Framework Gin Tutorial (Go语言Web框架)。Go安装,环境搭建;热加载(hot reload, live reload);路由(Route, Router)和分组路由(Group Router);HTML模板(HTML Template);中间件(Middleware)。

geektutu avatar Aug 13 '19 16:08 geektutu

您的每一篇文章都是精品,真的特别好!

yfgeek avatar Mar 16 '20 12:03 yfgeek

@yfgeek 感谢认可~

geektutu avatar Mar 16 '20 15:03 geektutu

感谢你的分享~

我在文中,发现了两处错误。

  1. 获取Query参数中的请求:curl http://localhost:9999/user/geektutu/student 这样应该是无效的,注释中提到的users?name=xxx&role=xxx应该是正确的请求格式。

  2. 获取POST参数小节 的这一行:password := c.DefaultPostForm("username", "000000") 是不是应该把 username => passwordQuery和POST混合参数这一小节中,也存在同样的问题。

yuzixun avatar Mar 29 '20 14:03 yuzixun

@yuzixun 非常感谢指出问题,已经修正,博客一段时间后会自动更新。

geektutu avatar Mar 29 '20 15:03 geektutu

简明扼要👍

ionling avatar Aug 21 '20 11:08 ionling

tutu 大神你好,请教个问题,下边的语法中 {} 代码段中有什么特殊作用么?

v2 := r.Group("/v2")
{
	v2.GET("/posts", defaultHandler)
	v2.GET("/series", defaultHandler)
}

chopin11 avatar Jan 10 '21 12:01 chopin11

@chopin11 tutu 大神你好,请教个问题,下边的语法中 {} 代码段中有什么特殊作用么?

v2 := r.Group("/v2")
{
	v2.GET("/posts", defaultHandler)
	v2.GET("/series", defaultHandler)
}

为了缩进,增加辨识度,没其他作用。

ionling avatar Jan 11 '21 00:01 ionling

tutu 大神你好,请教个问题,下边的语法中 {} 代码段中有什么特殊作用么?

@chopin11 @ionling 的回答是正确的,在这里 {} 包裹成独立代码块,与其他代码区分开发,便于理解。另外,Go 语言的变量作用域是代码块级别的,也就是,多个代码块内部可以定义相同的变量,而互相不影响。

geektutu avatar Jan 11 '21 01:01 geektutu

谢谢大神的教程。 看了过后有个疑问,重定向 部分的示例代码是不是写错了? 还是我理解的不对 ··· r.GET("/redirect", func(c *gin.Context) { c.Redirect(http.StatusMovedPermanently, "/index") })

r.GET("/goindex", func(c *gin.Context) { //这里是不是应该是“/index“, 或者上面Redirct 的第二个参数改成”/goindex“? c.Request.URL.Path = "/" r.HandleContext(c) }) ···

zakeyken avatar Apr 13 '21 14:04 zakeyken

好文,有个点问一下: HTML模块那个: r.LoadHTMLGlob("templates/*") 这里面的templates/*是什么意思? 我看会报错,也不知道改成啥,感觉是templates里面的东西

fengziboboy avatar May 05 '22 04:05 fengziboboy

路由那一节的前两个例子没有设置默认端口,所以应该还是8080,不是9999.

MachineGunLin avatar Aug 08 '22 15:08 MachineGunLin

上传文件那个咋测试呢? HTML模板的代码不知道咋运行

J-Corleone avatar May 23 '23 13:05 J-Corleone

@J-Corleone 上传文件那个咋测试呢? HTML模板的代码不知道咋运行 新建一个file.txt文件,postman选择Body。在Key栏划到右边可以找到一个下拉框,选择File,然后在Value栏选择之前新建的file.txt文件,配置好url地址,点击send就好啦

zixinfeixin666 avatar Sep 23 '23 14:09 zixinfeixin666