Golang实现定时任务 package main import ( "fmt" "github.com/robfig/cron/v3" ) func main() { // 每天凌晨0点执行一次:0 0 0 * * ? // 每隔3秒执行一次:*/3 * * * * * // spec := "*/...
go
go接口返回空数组
go语言nil返回接口时是null,前端同事要求返回[]空数组,代码片段如下: res := g.Map{ "list": menus, "statusOptions": statusOptions, "typeOptions": typeOptions, "fields"...
base64 的四种编码方式
事情的起因是这样的: 在做 siber 项目的时候,有接口使用 []byte 类型数据接收文件流。 // proto 定义 bytes file_data = 1; 但是 siber 是统一使用 json 格式进行的 request body 定义,不能直接传输...
使用Golang 实现websocket进阶封装
package garbage import ( "errors" "log" "net/http" "sync" "time" "github.com/gorilla/websocket" ) const ( // 允许等待的写入时间 writeWait = 10 * t...
Go语言实现websocket服务器
websocket应用场景: 1、即时通信。比如QQ,微信这些。 2、站内消息推送,比如打开qq时会提示xx用户已上线之类在app或者网站内部的消息。 3、实时数据获取。比如地理位置,用户是否在线等需要实时获取的...
密码保护:golang http.ServeFile预览图片读取图片
func View(c *gin.Context) { imgpath := c.Param("imgpath ") //imgpath := "./uploads/"+mux.Vars(r)["imgid"] http.ServeFile(c.Writer, c.Request, imgpath) } /前端显示图片 func Dow...
golang – 多模块工作区(multi-module workspaces)
go的多模块工作区是从1.18 版本开始的,所以要使用它首先要确认go 的版本。 $go version go version go1.18 windows/amd64 一下教程介绍了一个多模块工作区的用例。在多模块工作区中创建两个模块,对这些...
GoLang+gin框架导入Excel
安装 go get github.com/xuri/excelize/v2 控制器 func (e Users) UserImport(c *gin.Context) { srv := service.Users{} err := e.MakeContext(c).MakeOrm().MakeService(&srv.Service).Errors i...
GoLang+gin框架导出Excel
安装 go get github.com/xuri/excelize/v2 控制器 func (e Users) UserExport(c *gin.Context) { srv := service.Users{} req := dto.SysUserPageList{} records := make([]model.SysUser, 0) ...
golang 单词大小写驼峰转换下划线格式转换
package word import ( "strings" "unicode" ) //单词全部转化为大写 func ToUpper(s string) string { return strings.ToUpper(s) } //单词全部转化为小写 func ToLower(s string...