- 博客(10)
- 资源 (5)
- 收藏
- 关注
原创 8-gin使用JWT认证
什么是JWTJWT全称JSON Web Token是一种跨域认证解决方案,属于一个开放的标准,它规定了一种Token实现方式,目前多用于前后端分离项目和OAuth2.0认证的业务场景下。为什么需要JWT在偏传统的一些web项目中,我们通常使用的是Cookie-Session模式实现用户认证。相关认证流程大致如下:用户在浏览器端填写用户名和密码,并发送给服务端服务端对用户名和密码校验通过...
2020-03-26 07:20:56 626
原创 0-gin框架的优势
gin和django对比中间件利用函数调用栈后进先出的特点,巧妙的完成中间件在自定义处理函数完成的后处理的操作。django它的处理方式是定义个类,请求处理前的处理的定义一个方法,请求处理后的处理定义一个方法。gin的方式更灵活,但django的方式更加清晰。请求参数绑定对于获取请求内容,在模型绑定当中,有以下的场景绑定失败是用户自己处理还是框架统一进行处理用户需是否需要关心请求...
2020-03-26 07:20:56 1963
原创 BindQuery和shouldBindQuery的区别
BindQueryBindQuery在请求过程中, 如果参数错误会直接抛异常 返回400状态// BindQuery is a shortcut for c.MustBindWith(obj, binding.Query).func (c *Context) BindQuery(obj interface{}) error { return c.MustBindWith(obj, bi...
2020-03-26 07:20:56 4742
原创 6-gin操作数据库
go get -u github.com/jinzhu/gorm# 官方:https://gorm.io/zh_CN/docs/index.htmlgorm快速入门package mainimport ( "github.com/jinzhu/gorm" _ "github.com/jinzhu/gorm/dialects/sqlite")...
2020-03-26 07:20:56 1105
原创 7-实现无限级菜单
[toc]第一种方法数据表如下-- ------------------------------ Table structure for `auth_menu`-- ----------------------------DROP TABLE IF EXISTS `auth_menu`;CREATE TABLE `auth_menu` (`id` int(10) unsigned...
2020-03-26 07:20:56 317
原创 数组和切片使用技巧
两个切片如何去重func sliceUniq(lenSlice, shortSlice []string) (process []string) { lenMap := make(map[string]bool, len(lenSlice)) shortMap := make(map[string]bool, len(shortSlice)) for _, v := range...
2020-03-26 07:20:56 470
原创 swag使用
[toc]Java使用Spring Boot写Restful API时,可以在代码里用注解来标识API,编译为Jar包后,运行时Web应用可以直接托管API文档。具体的可以参考文章:使用swagger来做API文档。那么golang系有没有类似的做法呢?有是有的,只是没有springfox的那么方便就是了。swaggo提供了golang版本的swagger自动生产Restful API文档...
2020-03-26 07:20:56 16850 1
原创 websocket简介以及使用
[toc]简介在本次课程中,我们来学习使用WebSocket来打造一个实时聊天系统。我们会从一下几个方面来进行学习:什么是websocket;Websocket与传统的HTTP协议有什么区别;Websocket有哪些优点;如何建立连接;如何维持连接;Golang实战项目—实时聊天系统;总结;什么是websocket?WebSocket协议是基于TCP的一种新的网络协议。它实现...
2020-03-26 07:20:56 835
原创 9-gin使用websocket
[toc]gin使用websocketGin 框架默认不支持 websocket,可以使用 github.com/gorilla/websocket 实现。Talk is cheap. Show me the code,代码如下:项目布局:github.com└── leffss └── ginWebsocket ├── go.mod ├── g...
2020-03-26 07:20:56 5718 1
原创 time处理5*8h
输入5*8h 7*24h、开始时间、结束时间、返回时间间隔package mainimport ( "fmt" "strconv" "strings" "time")// 是否在工作时间func isWorkTime(i int) bool { var ( WorkTimeS...
2020-03-26 07:20:56 266
zabbix3.2.5(v1.2)安装配置及告警
2018-01-06
3.linux企业级应用
2018-01-06
2.Linux安全与高级应用
2018-01-06
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人