![](https://img-blog.csdnimg.cn/20201014180756925.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
Go
文章平均质量分 68
吕小布@lawson
这个作者很懒,什么都没留下…
展开
-
go get拉取常见问题
问题1.出现错误信息: module declares its path as: url1*** but was required as: url2***出现该错误信息,如果 url1*** 和 url2*** 不一样:如上图所示:一般是你要拉取的包的go.mod文件的module后面跟的模块名称或者路径名称在你初始化的时候不正确。修改方法:将你要拉取的库的 go.mod 的 module 的值修改成“***but was required as:***”后面的值。问题2. 出现该错误信息:**原创 2022-01-06 11:51:44 · 3443 阅读 · 0 评论 -
go 常见问题总结
1、golang 使用json序列化报 NaN +Inf 解决方法在使用JSON包或者无论是encoding下面的那个工具包,在序列化和反向序列化数据的时候,如果报NaN 或者Inf等字样,表示需要序列化的数据有问题。NaN:代表不是一个数 Not a number。Inf :代表阶码溢出,前面的加减符号代表高地位溢出,也就是小数点位后面无限大,使用不能很好的序列化。解决办法:NaN:使用fmt.Sprintf("%0.2f",浮点数) 输出一个字符串,判断字符串是否为“NaN”,如果是,给定一个原创 2021-12-28 17:00:12 · 3577 阅读 · 0 评论 -
validator进行参数校验、自定义校验规则、使用正则表达式
一、使用 github.com/go-playground/validator/v10 进行参数校验安装 validator:go get "github.com/go-playground/validator/v10"二、实现代码如下:var ( validate = validator.New() _ = validate.RegisterValidation("companyIdValidation", C原创 2021-12-01 16:31:12 · 5404 阅读 · 0 评论 -
Go包管理详解
一 包管理历史Golang 的包管理一直被大众所诟病的一个点,但是我们可以看到现在确实是在往好的方向进行发展。下面是官方的包管理工具的发展历史:在 1.5 版本之前,所有的依赖包都是存放在 GOPATH 下,没有版本控制。这个类似 Google 使用单一仓库来管理代码的方式。这种方式的最大的弊端就是无法实现包的多版本控制,比如项目 A 和项目 B 依赖于不同版本的 package,如果 package 没有做到完全的向前兼容,往往会导致一些问题。1.5 版本推出了 vendor 机制。所谓 vendo转载 2021-09-03 16:19:32 · 855 阅读 · 0 评论 -
Golang Gin框架跨域中间件问题
package mainimport ( "net/http" "github.com/gin-gonic/gin")func main() { r := gin.Default() r.Use(Cors()) // todo......}// 跨域func Cors() gin.HandlerFunc { return func(c *gin.Context) { method := c.Request.Method原创 2021-07-26 18:03:34 · 385 阅读 · 0 评论 -
Go使用gomail发送邮件详解,及使用smtp、email发送邮件
package mainimport ( "crypto/tls" "fmt" "gopkg.in/gomail.v2")func main() { test1()}func test1() { message := ` <p> Hello %s,</p> <p style="text-indent:2em">test test test test test test test test test test test test.原创 2021-06-30 09:26:08 · 31252 阅读 · 8 评论 -
GO连接redis数据库时,redis的TCP出现大量ESTABLISHED或者TIME_WAIT
golang redis连接池使用方法原创 2021-06-10 20:22:12 · 1921 阅读 · 2 评论 -
go通过ini文件读写实现“小数据库”
代码实现如下:var cfg *ini.Filefunc main() { var err error // 加载ini文件 cfg, err = ini.Load("test.ini") if err != nil { fmt.Println("[ReadLogId] fail to parse 'test.ini':", err) } // 增 fmt.Println(Add("w77")) // 删 fmt.Println(Del("w55")) // 改,将“w66原创 2021-06-06 13:34:21 · 725 阅读 · 7 评论