Gin框架介绍 Gin是一个用Go语言编写的web框架.它是一个类似于martini但拥有更好性能的API框架, 由于使用了httprouter,速度提高了近40倍. 中文文档 Gin框架安装与使用 安装GIN $ go get -u github.com/gin-gonic/gin 第一个Gin程序 package main import "github.com/gin-gonic/gin" func main() { // 创建一个默认的路由引擎 engine := gin.Def…
目录 科普 python 注释 # 函数高级 if else if else 包管理 下载第三方包 比较热门的框架 for 循环 for 循环的几种写法 switch 语句 数组及数组切片 数组迭代 多维数组 与或非 && || ! 作业 科普 python 注释 # 为什么几乎就 python 中的注释是 # ? 起初 python 在 linux 中用的最多,linux 中大量的配置.shell 脚本等都是 # 作为注释的,所以 python 的注释也就沿用了 # 代码几乎都要写在 m…
本文核心内容是利用jwt-go中间件来开发golang webapi用户登陆模块的token下发和验证,小程序登陆功能只是一个切入点,这套逻辑同样适用于其他客户端的登陆处理. 小程序登陆逻辑 小程序的登陆逻辑在其他博主的文章中已经总结得非常详尽,比如我参考的是这篇博文:微信小程序登录逻辑整理,所以在这里不再赘述,只是大致归纳一下我的实现流程: 在小程序端调用wx.login方法,异步获得到微信下发的 jscode ,然后将 jscode 发送到 golang 服务端(如果需要详细用户信息,见参考…
Gin框架源码解析 Gin框架是golang的一个常用的web框架,最近一个项目中需要使用到它,所以对这个框架进行了学习.gin包非常短小精悍,不过主要包含的路由,中间件,日志都有了.我们可以追着代码思考下,这个框架是如何一步一步过来的. 从http包说起 基本上现在的golang的web库都是从http上搭建起来,golang的http包的核心如下: func ListenAndServe(addr string, handler Handler) error { server := &Ser…
前言 gin框架是go语言的一个框架,框架的github地址是:https://github.com/gin-gonic/gin 转载本文,请标注原文地址:https://www.cnblogs.com/-beyond/p/9391892.html 安装gin框架 go get -u github.com/gin-gonic/gin 第一次使用gin框架 创建一个文件main.go,拷贝如下内容 package main import ( "github.com/gin-gonic/gin&qu…
目录 概述 Gin 安装 路由配置 推荐阅读 概述 看下 Gin 框架的官方介绍: Gin 是一个用 Go (Golang) 编写的 web 框架. 它是一个类似于 martini 但拥有更好性能的 API 框架, 由于 httprouter,速度提高了近 40 倍. 如果你是性能和高效的追求者, 你会爱上 Gin. 是的,就是用 Gin 来写 API 接口. 这篇文章分享 Gin 的安装和Gin 的路由配置. 路由配置包含的功能点如下: 实现了,路由分组 v1版本.v2版本. 实现了,生成签名…
目录 概述 日志格式 Logrus 使用 推荐阅读 概述 上篇文章分享了 Gin 框架的路由配置,这篇文章分享日志记录. 查了很多资料,Go 的日志记录用的最多的还是 github.com/sirupsen/logrus. Logrus is a structured logger for Go (golang), completely API compatible with the standard library logger. Gin 框架的日志默认只会在控制台输出,咱们利用 Logrus…
目录 概述 推荐阅读 概述 上篇文章分享了 Gin 框架使用 Logrus 进行日志记录,这篇文章分享 Gin 框架的数据绑定与验证. 有读者咨询我一个问题,如何让框架的运行日志不输出控制台? 解决方案: engine := gin.Default() //修改成如下 engine := gin.New() 我是怎么知道的?看框架代码. Default(): func Default() *Engine { debugPrintWARNINGDefault() engine := New() e…
Gin框架简介 Gin是使用Go/Golang语言实现的HTTP Web框架, 接口简洁, 性能极高,截止1.4.0版本,包含测试代码,仅14K, 其中测试代码9K, 也就是说测试源码仅5k左右, 具有类似Martini的API, 性能更高-快40倍. Gin特性 /* 快速: 路由不使用反射,基于Radix树,内存占用少 中间件: HTTP请求,先经过一系列中间件和最终操作来处理,例如: Logger, Authorization,GZIP等, 这个特性和NodeJs的Koa框架很像, 中间件…
在gin框架中使用JWT JWT全称JSON Web Token是一种跨域认证解决方案,属于一个开放的标准,它规定了一种Token实现方式,目前多用于前后端分离项目和OAuth2.0业务场景下. 什么是JWT? JWT全称JSON Web Token是一种跨域认证解决方案,属于一个开放的标准,它规定了一种Token实现方式,目前多用于前后端分离项目和OAuth2.0业务场景下. 为什么需要JWT? 在之前的一些web项目中,我们通常使用的是Cookie-Session模式实现用户认证.相关流程大…