![](https://img-blog.csdnimg.cn/20201014180756926.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
go
文章平均质量分 50
暮的秋歌
一名嵌入式开发工程师,熟悉stm32, linux
展开
-
go get -u github.com/gin-gonic/gin无法引入gin包的错误
【代码】go get -u github.com/gin-gonic/gin无法引入gin包的错误。原创 2024-05-25 17:46:21 · 454 阅读 · 0 评论 -
Key github.com/gin-contrib/sessions does not exist“
在路由定义之前调用middleware ( r.Use(sessions.Sessions("mysession", store)) )翻译 2022-09-16 17:50:35 · 781 阅读 · 1 评论 -
Windows protoBuf 安装+学习
已于 2022-07-22 14:44:24 修改207于 2022-07-16 10:53:56 首次发布版权声明:本文为博主原创文章,遵循版权协议,转载请附上原文出处链接和本声明。转载 2022-09-13 07:53:13 · 2660 阅读 · 0 评论 -
protoc-gen-go: unable to determine Go import path for “*.proto“问题解决
版权声明:本文为博主原创文章,遵循。于 2022-06-16 15:55:42 发布。版权协议,转载请附上原文出处链接和本声明。转载 2022-09-13 07:56:01 · 201 阅读 · 0 评论 -
【转】protoc-go-inject-tag 作用
在protobuf导出到golang的时候,生成的.go文件里的struct的tag是没办法灵活设置的,以下面这个message为例test.prototest";}}这段代码最终的输出会是{},因为Code的json tag设置了omitempty,这种情况在开发过程中有时候是很蛋疼的,因为即便Code是默认值0,我们也还是希望能打印出来的。因此我们需要一种方法能通过在编写proto文件的时候,在里面注入tag,然后导出成go的时候这个被注入的字段的tag可以自定义。转载 2022-09-27 19:49:37 · 1253 阅读 · 0 评论 -
Gin 中使用 base64Captcha 生成图形验证码分布式架构-redis方案
本文章向大家介绍Gin 中使用 base64Captcha 生成图形验证码分布式架构-redis方案,主要包括Gin 中使用 base64Captcha 生成图形验证码分布式架构-redis方案使用实例、应用技巧、基本知识点总结和需要注意事项,具有一定的参考价值,需要的朋友可以参考一下。转载 2022-09-16 17:52:34 · 895 阅读 · 0 评论 -
Go fmt.Scanf()、ReadLine()两种方法读取输入字符or字符串
解答:因为Scan() 从标准输入扫描文本,读取由空白符分隔的值保存到传递给本函数的参数中,换行符视为空白符。原文链接:https://blog.csdn.net/weixin_44387225/article/details/115491237。n, _ := fmt.Scanf("%c", &c)//此处不能用fmt.Scan()来读取。b := input.ReadLine()//ReadLine()返回的是一个[]byte。待查:fmt.Scan()为什么不能读取一个字符就停止呢。转载 2022-11-19 16:39:51 · 633 阅读 · 0 评论 -
module declares its path as: concurrentHashMap but was required as: github.com/hfdp/c
go get github.com/hfdpx/concurrentHashMap原创 2022-11-16 11:09:20 · 401 阅读 · 0 评论 -
golang2021数据格式(55)map线程安全吗
如果在同一个协程内边遍历边删除,并不会检测到同时读写,理论上是可以这样做的。但是,遍历的结果就可能不会是相同的了,有可能结果遍历结果集中包含了删除的 key,也有可能不包含,这取决于删除 key 的时间:是在遍历到 key 所在的 bucket 时刻前或者后。在查找、赋值、遍历、删除的过程中都会检测写标志,一旦发现写标志置位(等于1),则直接 panic。赋值和删除函数在检测完写标志是复位之后,先将写标志位置位,才会进行之后的操作。写之前调用 Lock() 函数,写完之后,调用 Unlock() 解锁。转载 2022-11-06 11:49:55 · 202 阅读 · 0 评论 -
Kafka--安装与设置
原文网址:Kafka--安装与设置_IT利刃出鞘的博客-CSDN博客安装单机Kafka步骤安装kafka需要安装:JDK+Zookeeper+Kafka。1.下载下载地址: Apache Kafka2.解压3.修改配置安装目录/config/server.propertieslog.dirs=D:\Kafka\kafka_2.12-0.11.0.0\kafka-logs //日志路径zookeeper.connect=localhost:2181 //zooke转载 2022-11-06 11:16:45 · 388 阅读 · 0 评论 -
kafka-go
We rely on both Go and Kafka a lot at Segment. Unfortunately, the state of the Goclient libraries for Kafka at the time of this writing was not ideal. The availableoptions were:sarama, which is by far the most popularbut is quite difficult to work with.转载 2022-11-06 11:10:42 · 458 阅读 · 0 评论 -
kafka容器报内存不足异常(failed; error=‘Cannot allocate memory‘ (errno=12))
找到这一行export KAFKA_HEAP_OPTS=改为 export KAFKA_HEAP_OPTS。一、启动kafka broker时异常。[LV.9]以坛为家II。签到天数: 428 天。转载 2022-11-05 17:23:57 · 572 阅读 · 0 评论 -
Kafka启动报错:java.nio.file.NoSuchFileException:
如果如上错误,显示没有这个文件,极有概率是路径不对或者配置文件名称打错(强烈使用Tab键补全命令)。如果是是使用脚本启动,看看自己的脚本是不是写错了。原文链接:https://blog.csdn.net/qq_41333482/article/details/123774033。版权声明:本文为CSDN博主「栗条米」的原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接及本声明。我遇到的问题是,修改完log.dir定义的路径权限后,问题解决。,注意不换行,整行输入。转载 2022-11-05 17:22:27 · 1032 阅读 · 0 评论 -
kafka安装使用+工具连接
原文链接:https://blog.csdn.net/qq_40749830/article/details/121884459。版权声明:本文为CSDN博主「+小志+9」的原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接及本声明。路径:C:\Windows\System32\drivers\etc。2、可能连上了zookeeper,但是连不上kafka。1、将安装包上穿到linux上。4、启动zookeeper。二、kafka安装启动。8、控制台启动生产者。9、控制台启动消费者。转载 2022-11-05 17:20:38 · 2680 阅读 · 0 评论 -
Go语言的正则表达式简介
返回两个返回值,其中布尔型变量matched代表是否找到了匹配的字符串,err用于函数处理出错后返回错误信息。t.Printfln("字符串%#v中不包含符合正则各地怕啊%#v的字串。t.Printfln("字符串%#v中包含符合正则各地怕啊%#v的字串。Go语言中标准库内用于正则表达式处理的包是regexp,其中提供了使用正则表达式各项功能所必需的函数。t.Printfln("正则表达式匹配时发生错误:%v", errT.Error())"中包含符合正则各地怕啊"太*高兴"的字串。转载 2022-11-05 09:17:29 · 235 阅读 · 0 评论 -
Go语言编写单元测试用例
18 {"case 1", args{6, 0}, 0, true},//注意第二个用例是会返回error的,因为除数不能为0,所以此处wantErr为true。等待被测试的文件 division.go 如下,需要在同一个包里写一个测试文件命名为mydivision_test.go。结果为division.go生成了division_test.go文件如下,生成文件的默认前缀为对应的原文件名。不过,包外测试源码文件存在一个弊端,那就是在它们的测试函数中无法测试被测源码文件中的。转载 2022-10-26 13:03:26 · 549 阅读 · 0 评论 -
go: go-micro.dev/v4/cmd@v1.18.0: parsing go.mod: module declares its path as: github.com/mic
go get go-micro.dev/v4即可解决。原创 2022-10-16 09:28:22 · 879 阅读 · 0 评论 -
Go语言实现websocket服务
上面的例子只是实现了最基本的websocket功能,客户端发送消息,服务端接收到以后就按原样返回(json数据会作BASE64加密)。但在实际的项目中,需要处理的逻辑远比这个复杂。而且数据在传输过程中没有加密,因此在实际应用中,使用json加密后传输。客户端或服务端接收到的只是一串字符串,内部解密后再进行相应的业务逻辑处理。2、站内消息推送,比如打开qq时会提示xx用户已上线之类在app或者网站内部的消息。比如地理位置,用户是否在线等需要实时获取的消息。比如QQ,微信这些。转载 2022-10-13 17:56:34 · 2915 阅读 · 0 评论 -
go 连接 mysql: could not use requested auth plugin ‘mysql_native_password‘
文章目录 go 连接 mysql 问题go 连接 mysql 问题 参考官方文档 https://go.dev/doc/tutorial/database-access var db *sql.DBfunc main() {// Capture connection properties.cfg := mysql.Config{User: os.Getenv("DBUSER"),Passwd: os.Getenv("DBPASS…转载 2022-10-06 14:31:21 · 409 阅读 · 0 评论 -
macOS配置Go Micro开发环境
写文章温柔的程序员关注他9 人赞同了该文章Go Micro是一个基于Golang的微服务框架,它提供了微服务分布式系统的核心组件(例如服务发现、负载均衡、RPC等),同时,Go Micro提供插件机制,方便集成微服务相关工具(例如消息队列Kafka,服务发现Consul等),基于Go Micro可以快速搭建自己的微服务系统。本文描述了在macOS下如何配置Go Micro的开发环境。转载 2022-10-02 08:40:45 · 850 阅读 · 0 评论 -
安装protoc-gen-micro
版权声明:本文为CSDN博主「huiwen」的原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接及本声明。原文链接:https://blog.csdn.net/a145127/article/details/126346032。转载 2022-10-02 08:14:19 · 722 阅读 · 0 评论 -
【Golang】怎样优雅的清空切片
这是个有意思的问题,在此之前,博主从来没有考虑过这个问题,直到最近,终究还是与相遇了。场景是这样的:需要批量从中查询数据,这个批量查询的查询条件是通过遍历一个结构体切片的字段,不断append,为了避免一次查询量过大,影响查询效率。过程中,当queryIDs的长度超过50,马上启动查询,查询完成后,,遍历结束后,queryIDs仍有数据,继续查询剩下的。转载 2022-09-27 20:07:25 · 2349 阅读 · 0 评论 -
Windows protoBuf 安装+学习
我们知道,在json中是通过成员的名字来绑定对应的数据,但是Protobuf编码却是通过成员的唯一编号来绑定对应的数据,因此Protobuf编码后数据的体积会比较小,能够快速传输,缺点是不利于阅读。许多标准的简单数据类型都可以作为字段类型,包括bool,int32, float,double,和string。解析数据时,如果编码的消息不包含特定的单数元素,则解析对象对象中的相应字段将设置为该字段的默认值。//指定版本信息,不指定会报错,默认proto2。//指定版本信息,不指定会报错。转载 2022-09-18 15:28:49 · 1354 阅读 · 0 评论 -
gin框架中的中间件
注意: 请注意黑色的数据里面有一步算时间差没有执行(需要学习Next就懂了)所有请求都经过此中间件。转载 2022-09-18 15:26:04 · 186 阅读 · 0 评论 -
go-gin中如何在中间件之间共享变量
在go-gin中这是可能的吗,那么如何呢?我需要跨中间件传递数据,但我不知道如何。例如,在ExpressJS中,我的路由如下所示。我会创建一个全局变量,并像。转载 2022-09-18 15:18:37 · 747 阅读 · 0 评论 -
阿里云短信服务使用
因为项目负责人和需求方对接问题,具体的短信模板并没有对接好,某种程度上可以说是只是我自己运行成功,发送短信成功,而暂时没有实际投入项目中(鬼知道一星期能不能对接好),所以这篇文档就是我的总结文档,会放在平台给大家作为借鉴学习。然后,嗯,运行它,然后你会发现失败(没有发送到你手机上)。这是用go语言实现的,但说实话,其实没啥影响,不管什么语言都是这个套路,所以无论你是学什么语言或者是用什么语言的都好,看看总不亏。// 准备测试阶段,格式基本就是下边的,除了电话号码改改,code六位可以改改,别的动不了。转载 2022-09-16 17:56:25 · 1255 阅读 · 0 评论 -
go mod tidy: go.mod file indicates go 1.18, but maximum supported version is 1.16
问题原因就是你的go.mod里面指定的go版本高于你的实际安装的go的版本,解决方法:要么修改go.mod里的版本为你的实际安装版本,要么将你的go版本进行升级。版权声明:本文为CSDN博主「blakeyi」的原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接及本声明。原文链接:https://blog.csdn.net/blake321/article/details/125927651。转载 2022-09-16 17:53:39 · 4232 阅读 · 0 评论 -
go work 工作区
我们的代码在mypkg中,需要开发的第三方依赖在workmod中,我们可以把所有需要开发的依赖都放在workmod下,然后加入到go.work中进行开发调试。此时我发现cast包有bug或者需要对cast包加入新功能,那我就需要对cast包进行开发,在1.18前对依赖包进行开发调试是很麻烦的。创建目录 workmod(这一步可要可不要,只要一会儿指定的目录对就行,只要这个目录不要放在mypkg里面就行)此时我们对cast的依赖就成了本地这个文件了,对 go-spew等其他依赖保持不变。转载 2022-09-05 06:46:37 · 2174 阅读 · 0 评论 -
go环境变量配置 (GOROOT和GOPATH)的区别和含义
如果要上述设置生效, 可以执行命令: source ~/.bash_profile, 上述所有操作均为mac系统下的操作, 如果是非mac系统, 请自行变通.GOPATH是作为编译后二进制的存放目的地和import包时的搜索路径 (其实也是你的工作目录, 你可以在src下创建你自己的go源文件, 然后开始工作)。GOPATH可以是一个目录列表, go get下载的第三方库, 一般都会下载到列表的第一个目录里面。运行生成的文件./hello, terminal中输出: Hello, GO!转载 2022-09-05 06:42:13 · 773 阅读 · 0 评论 -
go mysql 添加数据_使用go脚本向MySQL表中写入数据
版权声明:本文为CSDN博主「firstcode666」的原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接及本声明。原文链接:https://blog.csdn.net/firstcode666/article/details/122763418。转载 2022-09-04 21:53:50 · 410 阅读 · 0 评论 -
GO语言包之间的调用
6.当标识符(包括常量、变量、类型、函数名、结构字段等等)以一个大写字母开头,如: Group1, 那么使用这种形式的标识符的对象就可以被外部包的代码所使用(客户端程序需要先导入这个包), 这被称为导出(像面向对象语言中的public);多行注释也叫块注释,均已以/* 开头,并以 */结尾,且不可以嵌套使用,多行注释一般用于包的文档描述或注释成块的代码片段。2,import "fmt"告诉Go编译器这个程序需要使用fmt包(的函数,或其他元素) , fmt 包实现了格式化io(输入/输出)的函数。转载 2022-09-04 09:09:57 · 1670 阅读 · 0 评论 -
go module学习实战
或者go mod edit -require=example.com/greetings@v1.1.0。go get example.com/greetings(go mod tidy可能也行)go mod tidy添加缺失的包,移除未使用的包。创建项目,文件路径如下。此时,发现包可以找到了。转载 2022-09-04 09:09:02 · 95 阅读 · 0 评论 -
golang操作mysql(go-sql-driver 包使用)
3、幻读:系统管理员A将数据库中所有学生的成绩从具体分数改为ABCDE等级,但是系统管理员B就在这个时候插入了一条具体分数的记录,当系统管理员A改结束后发现还有一条记录没有改过来,就好像发生了幻觉一样,这就叫幻读。2、不可重复读:事务 A 多次读取同一数据,事务 B 在事务A多次读取的过程中,对数据作了更新并提交,导致事务A多次读取同一数据时,结果 不一致。// db是线程安全的,并且在内部维护了数据池。1、脏读:事务A读取了事务B更新的数据,然后B回滚操作,那么A读取到的数据是脏数据。转载 2022-09-04 07:16:05 · 689 阅读 · 0 评论 -
go work: unknown command
升级到go version go1.18.5 darwin/amd64就可以了。原创 2022-09-03 07:35:36 · 1024 阅读 · 0 评论 -
go get goquery错误
最终发现是go/github.com/PuerkitoBio/goqueryGitHub上无法下载,然后从码云上下载下来,放置在如上路径中,原创 2022-09-03 07:15:00 · 221 阅读 · 0 评论 -
go: go.mod file not found in current directory or any parent directory; see ‘go help mod 解决
go:在当前目录或任何父目录中找不到 go.mod 文件;参见“去帮助模块”1、原因go module没有开启122、解决办法:go的环境设置问题,执行:13、查看:123。转载 2022-08-24 12:21:53 · 2656 阅读 · 0 评论 -
Mac下使用brew安装go
它可以包含多个包含 Go 语言源码文件、包文件和可执行文件的路径,而这些路径下又必须分别包含三个规定的目录:src、pkg 和 bin,这三个目录分别用于存放源码文件、包文件和可执行文件。事实上安装好后的go已经可以使用了,我们只需要在home下新建go文件夹,就可以在这个目录下创建go项目,如果不想使用默认的home/go文件夹当作工作空间,可以修改go env中的GOPATH=/xxx/xxx。,Go 1.0.3 及以后的版本,可以将它的值设置为空,Go 会使用默认值。项目存放目录,默认采用和。转载 2022-08-24 12:20:28 · 3231 阅读 · 0 评论 -
liteide安装方法
原文链接:https://blog.csdn.net/u012386618/article/details/80901269。版权声明:本文为CSDN博主「我是花轮」的原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接及本声明。快捷键command+R运行 ,若出现下图即配置成功。打开并编辑bash_profile,在终端中输入。大家根据系统下载对应的版本的liteide。在百度网盘中下载指定版本的liteide。创建文件hello.go,是否可以运行。3、测试是否配置成功。转载 2022-08-24 12:18:24 · 640 阅读 · 0 评论