草庐IT

go-mocket

全部标签

json - Go:分配给嵌套结构

下面是一个代码片段——我很困惑如何在我用于JSON解码的嵌套结构(“myTime”)中分配变量。(我在JSON文件中有一些Unix时间戳,我希望学习如何解码它们。)这会引发以下错误:main.go:15:cannotusetime.Unix(a,0)(typetime.Time)astype*myTimeinassignmentmain.go:25:t.Stringundefined(typemyTimehasnofieldormethodString)我不确定如何去理解这个问题,所以任何解释或指向特定文档的指针都会有很大帮助!packagemainimport("encoding/b

go - 使用缓冲 IO 与使用 Goroutine 写入文件

我正在使用golang实现一个日志记录库。我知道将日志写入文件是一个缓慢的I/O操作。然后我在考虑使用goroutine来利用goroutine的异步特性的好处。这样maingoroutine就不会被任何I/O操作阻塞。最近发现go库提供了一个bufferedI/Olibrary.我想知道哪种方式是实现文件日志记录的最佳方式?这两种设计之间是否存在折衷? 最佳答案 一个goroutine从缓冲channel读取并写入缓冲写入器,其他goroutine将日志发送到该channel。 关于g

go - Beego 和 Https

尝试设置https,如下所述:https://github.com/astaxie/beego/issues/401并在日志中得到这个:2016/09/2814:05:34[I][asm_amd64.s:2086]httpsserverRunningonhttps://127.0.0.1:104432016/09/2814:05:37[server.go:2315][HTTP]http:TLShandshakeerrorfrom127.0.0.1:65365:tls:firstrecorddoesnotlooklikeaTLShandshake我在Windows10上运行它。有人让Be

go - 指针和结构成员函数

调用函数当我定义一个结构Lock和一个函数Test时,结构Lock作为函数接收者typeLockstruct{}func(selfLock)Test(){fmt.Println("TestFunc")}我发现我可以用一个Lock结构指针来调用这个函数lock:=&Lock{}lock.Test()同理,如果我定义一个structLock和一个函数Test作为Lock的指针作为接收者,我可以调用此函数通过Lock结构实例。那么无论接收者是结构本身还是结构指针,我都可以通过两者调用这个函数吗?什么原因。据我理解,struct和structpointer是完全不同的两种类型!界面如果像这样定

go - 接口(interface)上的 nil 测试失败

这个问题在这里已经有了答案:Hidingnilvalues,understandingwhyGofailshere(3个答案)关闭6年前。谁能给我解释一下这段代码?调用它时,err!=nil返回true,从而导致nil指针引用。typeEstruct{}func(eE)Error()string{return""}funcDoStuff()*E{returnnil}funcmain(){varerr*Eerr=DoStuff()log.Println(err)//niltestErr(err)}functestErr(errerror){iferr!=nil{log.Println("

git - Go Get not Working 用于下载 Hyperledger Fabric

我正在尝试从IBMBluemixBlockChainExamples运行这个示例应用程序:https://console.ng.bluemix.net/docs/services/blockchain/ibmblockchain_tutorials.html#hellocc我正在运行以下命令:C:\goProjects>去获取github.com/hyperledger-archives/fabric/tree/v0.5-developer-preview/core/chaincode/shim我得到的错误如下。packagegithub.com/hyperledger-archive

go - 从大型 nfcapd 二进制文件获取 IP 地址

我需要从nfcapd二进制文件中获取有关源IP和目标IP的信息。问题出在文件的大小上。我知道用io或os包打开和读取非常大(超过1GB)的文件是不可取的。这是我的黑客攻击和草稿开始:packagemainimport("fmt""time""os""github.com/tehmaze/netflow/netflow5""log""io""bytes")typeMessageinterface{}funcmain(){startTime:=time.Now()getFile:=os.Args[1]processFile(getFile)endTime:=time.Since(start

go - 从保险库 KV 值构建动态字符串

我正在尝试创建与此类似的内容:{{withsecret"secret/data"}}{{range$k,$v:=.Data}}{{ifeq$k"db-primary"}}{{with$secret:=secret"mysql-$v/creds/primary"}}{{$secret.username}}:{{$secret.password}}{{end}}{{end}}{{end}}{{end}}其中$v是一个动态值。我不知道如何让嵌套的with语句将$v的值解析为它的参数。 最佳答案 如果有人想做类似的事情,我找到了答案{{wi

arrays - Go - 如何将编码的 json 对象附加到文件

有没有办法在不加载该文件的情况下将编码的json对象附加到文件内的json数组中?我的意思是:Contentsof"file.json"://jsonarray[//jsonobjects{...},{...},{...}//APPENDNEWmarshalledjsonobjecthere]如果这不可能或效率不高,那么在一个slice中长时间保存20MB的结构是否可行? 最佳答案 你必须对原始字节流进行操作,你可以删除结束标记,附加新的json对象并再次重写结束标记。 关于arrays

go - 在 Go 包中复制数据文件?

我有一个Go包,它使用CFLAGSforcgo链接到C库。反过来,C库需要本地数据文件才能正常工作。它是预建的3d方库,设置数据文件路径的选项不可用。如果包的客户端是本地的并且数据由lib加载,一切都按预期工作,但是当我构建和安装包时,数据文件没有被复制。在安装包时是否可以选择将自定义文件放在go包附近? 最佳答案 Isthereanyoptiontoputcustomfileneargopackagewhileinstallingpackage?不,没有。对不起。这必须通过其他方式解决,例如系统包管理器。