戈朗-金框架
框架一直是敏捷开发的利器,能让开发者快速上手,做出应用。有时候,即使没有框架,有些开发者也写不出程序。成长永远不会一蹴而就,从写程序到获得成就感,再到掌握框架,快速构造应用。当这些方面都得心应手的时候,你可以尝试转换一些框架或者自己创建一个。
Gin是golang的微框架,包装优雅,API友好,源代码注释清晰。版本1.0已经发布。它快速、灵活、容错、方便。其实对于golang来说,web框架的依赖性远不如Python,Java等。自有网络//gin-gonic/gin
如果安装失败,直接去Github clone,放在对应的目录下。
(2)在代码中使用:
下面是一个使用Gin的简单例子:
主包装
导入(
" github.com/gin-gonic/gin "
)
func main() {
路由器:= gin。默认()
路由器。GET("/ping ",func(c *gin。上下文){
c.JSON(200,杜松子酒。H{
"消息":"乓",
})
})
路由器。Run(":8080") //监听并服务于0.0.0.0:8080
}
几行简单的代码就可以实现一个web服务。使用gin的默认方法创建一个路由处理程序。然后通过HTTP方法绑定路由规则和路由函数。不同于网//gin-gonic/gin查看。
2.1匹配参数
我们可以使用Gin框架快速匹配参数,如以下代码所示:
冒号:添加参数名以形成路由参数。您可以使用c.Param的方法来读取它的值。当然这个值是一个字符串。比如/user/rsj217和/user/hello可以匹配,但是/user/和/user/rsj217/不会匹配。
浏览器进入以下测试:
返回的结果是:
其中c.String是gin下提供的方法。返回字符串的上下文。
其中c.Json是gin下提供的方法。返回Json的上下文。
下面我们使用下面gin提供的Group函数,方便的对不同的API进行分类。
我们为gin创建一个默认路由,并为其分配一组v1,监听hello请求并路由到视图函数HelloPage,最后绑定到0.0.0.0:8000。
C.json是Gin实现的返回json数据的内置方法,包含两个参数,状态码和返回内容。e"} .
注意:Gin还包含更多的返回方法,如C. String、c.HTML、C. XML等。请自己了解。可以方便的返回HTML数据。
我们在以前的组v1路由下定义一条新路由:
接下来,我们参观。
可以看到,Gin通过c.Param("key ")的方法成功捕获了url请求路径中的参数。类似地,gin也可以捕获通用参数,如下面的代码所示:
在浏览器中输入以下代码:
url参数可以通过c . Query(“key”)成功接收,如果参数不存在,c.DefaultQuery将被其默认值替换。
我们还可以为Gin定义一些默认路线:
这时,我们访问了一个不存在的页面:
回报如下:
让我们测试一下Post在Gin中的用法。
在测试结束时,输入:
附上发来的资料,测试一下就好。记得用POST方法。
继续修改,修改后处理器的功能如下
测试工具输入:
已发送内容输入:
返回的结果如下:
注意:您需要在这里将Content-Type指定为application/x-www-form-urlencoded,否则它将无法被识别。
请确保选择相应的上传或删除方法。
Gin框架快速创建路线。
创建组很方便。
支持url正则表达式
支持参数查找(c .参数c .查询c .后置格式)
请求方法精确匹配
支持404处理
快速向客户端返回数据,常用c.stringco.jsonc.data。