首页 >后端开发 >Golang > 正文

gin框架有什么优势

转载2020-09-16 09:38:070494
下面由golang教程栏目给大家介绍gin框架的优势,希望对需要的朋友有所帮助!

gin和django对比

中间件

利用函数调用栈后进先出的特点,巧妙的完成中间件在自定义处理函数完成的后处理的操作。

django它的处理方式是定义个类,请求处理前的处理的定义一个方法,请求处理后的处理定义一个方法。

gin的方式更灵活,但django的方式更加清晰。

请求参数绑定

对于获取请求内容,在模型绑定当中,有以下的场景

  • 绑定失败是用户自己处理还是框架统一进行处理
  • 用户需是否需要关心请求的内容选择不同的绑定器

在gin框架的对于这些场景给出的答案是:提供不同的方法,满足以上的需求。这里的关键点还是在于使用场景是怎样的。

// 自动更加请求头选择不同的绑定器对象进行处理
func (c *Context) Bind(obj interface{}) error {
    b := binding.Default(c.Request.Method, c.ContentType())
    return c.MustBindWith(obj, b)
}

// 绑定失败后,框架会进行统一的处理
func (c *Context) MustBindWith(obj interface{}, b binding.Binding) (err error) {
    if err = c.ShouldBindWith(obj, b); err != nil {
        c.AbortWithError(400, err).SetType(ErrorTypeBind)
    }

    return
}

// 用户可以自行选择绑定器,自行对出错处理。自行选择绑定器,这也意味着用户可以自己实现绑定器。
// 例如:嫌弃默认的json处理是用官方的json处理包,嫌弃它慢,可以自己实现Binding接口
func (c *Context) ShouldBindWith(obj interface{}, b binding.Binding) error {
    return b.Bind(c.Request, obj)
}

以上就是gin框架有什么优势的详细内容,更多请关注php中文网其它相关文章!

php中文网最新课程二维码
  • 相关标签:gin
  • 本文转载于:csdn,如有侵犯,请联系a@php.cn删除
  • 相关文章

    相关视频


    网友评论

    文明上网理性发言,请遵守 新闻评论服务协议

    我要评论
  • YII2的​点:模型使用方便,开发速度快,运行速度也快,用于大规模Web应用。缺点:文档实例较少、View并不是理想view;前后端完全的分离的趋下,yii2前后端的耦合的还是些重了。
    AJAX哪些点和缺点?AJAX应用和传统Web应用不同?Ajax的实现流程是怎样的?Java集合?说出一些集合点?Java集合的基础接口哪些?
    golang的Beego 、Buffalo 、Gin 、Iris、Revel 等。beego是一个快速开发Go应用的http,go 语言方面技术大牛。
    Java稳定,技术成熟;当想要一种技术时,Java开源必然会给出适合的技术解决方案,且绝不止一种。而Go语言就没这个了,毕竟作为新兴技术,它的各类开源还不够多。
    小程序介绍要写的内容:小程序主要是干的、具体哪些独特之处,小程序介绍一定要足够吸引人。
    相对于 Object.defineProperty ,proxy 区别,,以及可以应用在地方,该文章就简单的介绍下。
    Java容器哪些?list,map,set,array,它们区别?collection与collections不同?
    前端:1、Bootstrap;2、Foundation;3、Angular;4、React;5、VueJS
    学php可以不学,但是PHP不使用会降低开发效率,并且高稳定性和安全性,开发者使用还是很大
    如果你是一个前端开发人员,当你在开发新项目时,想必一定被人问过“你用的是?”进而开展各种前端技术话题。但是对于初入门的前端小白来说,遇到这样的问题估计会产生一系列的疑问“前端意思?
    这取决与你的DNS服务器,DNS给你返回的是地址那就是地址;当然你可以把IPv6给禁用掉。
    Gin是一个Golang写的web,具高性能的点,基于httprouter, 它提供了类似martini但更好性能(路由性能约快40倍)的API,封装比较雅,API友好,源码注释比较明确,具快速灵活
    本文主要讲解PHP是,以及PHP的原理以及应用。需要的小伙伴可以收藏学习。
    要构建自己的 PHP
    苹果电脑的:1、着OS系统,安全性高;2、续航能力强;3、触控板效果好;4、苹果电脑体重轻薄,而且极简外观、不错的工艺,颜值高。
    在深入研究Node.js之前,你可能想了解使用跨栈的 JavaScript 好处,它统一了语言和数据格式(JSON),允许你以最佳的方式重用开发人员资源。
    下面由workerman入门教程栏目给大家介绍是workerman,希望对需要的朋友所帮助!
    它让javascript可以开发后端程序,实现几乎其他后端语言实现的所功能,可以与PHP、Java、Python、.NET、Ruby等后端语言平起平坐。
    下面由workerman教程栏目给大家介绍Workerman的理念是,希望对需要的朋友所帮助!Workerman的理念:极简、稳定、高性能、分布式。
    JPA的英文全称是“Java Persistence API”,表示Java持久层API,是Java持久化规范,它为Java开发人员提供了一种对象、关联映射工具来管理Java应用中的关系数据,具标准化

    专题推荐

    推荐视频教程
  • javascript初级视频教程javascript初级视频教程
  • jquery 基础视频教程jquery 基础视频教程
  • 视频教程分类