草庐IT

menu_how

全部标签

go - 我是否对 "How to Write Go Code"示例中 Go 工作区中的 git 存储库结构感到困惑?

我对HowtoWriteGoCode有两点困惑文章。它们可能是文章中的错误,或者我可能只是忽略了重点。在描述典型工作区的结构时,文章说Thesrcsubdirectorytypicallycontainsmultipleversioncontrolrepositories(suchasforGitorMercurial)thattrackthedevelopmentofoneormoresourcepackages.文章中的第一个示例工作区与此描述相匹配,有2个文件夹代表存储库(github.com/golang/example/和golang.org/x/image/),每一个在其正

go - 洛格鲁斯 : How to print con console log

实现LogrusGo包。文件已保存,但停止在控制台上打印日志,日志仅在创建的名为vendor.log的.log文件中可见。这是当前使用的代码。packageloggingimport("fmt""os"mylog"github.com/sirupsen/logrus")//InitializeLoggingasdasfuncInitializeLogging(logFilestring){varfile,err=os.OpenFile(logFile,os.O_RDWR|os.O_CREATE|os.O_APPEND,0666)iferr!=nil{fmt.Println("Could

戈朗 : How to run the same logic at the beginning of every struct member functions?

例如,我想打印出某个结构的每个函数的函数名。除了我在每个成员函数的开头使用fmt.Println,还有什么更好的方法吗? 最佳答案 packagemainimport"fmt"import"runtime"funcmain(){pc,_,_,_:=runtime.Caller(0)fmt.Println("Nameoffunction:"+runtime.FuncForPC(pc).Name())fmt.Println()//or,defineafunctionforitfmt.Println("Nameoffunction:"+f

javascript - 戈朗 : How to access html/css toggle switch value in go

这个问题在这里已经有了答案:Whatisthedifferencebetweenclient-sideandserver-sideprogramming?(4个答案)关闭6年前。我正在尝试在我的网页中实现一个切换开关。为此,我关注了以下网站:w3schools.com我目前在我的html文件中设置了一个按钮和这个切换开关。我还在go中配置了我的网络服务器以监听localhost:8080。我配置了一个websocket处理程序,这样我就可以通过单击按钮轻松地将数据传递到我的网页。我想做的是在我的网页上创建一个用户可以打开和关闭的切换开关,然后让他们单击一个按钮。单击该按钮后,我想根据此

戈朗 : how can filename arguments be parsed?

我正在用golang编写一个命令行实用程序,它将一个文件作为参数。如何准确地将此参数转换为可用文件?似乎有很多情况要处理:已给出绝对路径,我应该按原样使用已给出相对路径,我应该将它与当前工作目录进行path.Join()路径中使用了“.”和“../”,我认为我仍然应该使用path.Join()并且Go会简化路径?Go是否提供任何东西来处理这个问题?我应该只根据第一个字符是否为“/”进行分支吗?这似乎是一个hacky解决方案,但也许它总是有效,所以应该这样做吗? 最佳答案 操作系统为您解释路径。您不需要对路径名做任何事情。你可以简单地

json - Go 和 JSON : how to dynamically load a field

我知道如何在go中使用JSON和接口(interface)而没有太多问题。我想让用户从JSON字符串中选择一个JSON元素,并将元素模式存储在一个字符串中,以便我以后可以动态加载它。我有以下JSON:{"id":1,"name":"Agreendoor","price":12.50,"tags":["home","green"]}当然,如果我想要我的JSON的id元素,这很容易,因为id是我要保存的字符串。现在假设我想要标签[1]。随着JSON变得越来越复杂,您会发现这变得越来越难。例如,我可能想保存类似于tags[1].data[0].values.id等的模式......基本上,我

sockets - io.复制: How to know if a socket is closed or disconnected

我有一个简单的程序,它将程序的stdin、stdout和stderr连接到一个套接字,就像这样,gofunc(){deferconn.Close();deferstdin.Close();io.Copy(stdin,conn);}();gofunc(){deferconn.Close();deferstdout.Close();deferstderr.Close();io.Copy(conn,stdout);io.Copy(conn,stderr);}();select{}我有两个问题,我必须通过执行select{}让这两个goroutine保持运行当套接字断开连接时,无法通知它。如果

unit-testing - 优步 Cadence : How do I assert the call to workflow. sleep ()?

在我的单元测试中,我想断言调用了workflow.Sleep()。我该怎么做? 最佳答案 可以使用TestWorkflowEnvironment.Now()函数访问模拟时间。例如:before:=testenv.Now()testenv.ExecuteWorkflow(...)after:=testenv.Now()然后断言before和after之间的变化。 关于unit-testing-优步Cadence:HowdoIassertthecalltoworkflow.sleep()?,

go - bufio.扫描仪 : how to know if we are processing a new line or a truncated string?

我基本上需要处理从流中读取的有限缓冲区中的每个字符串行。使用bufio.Scanner,我可以逐行扫描扫描仪,但不得不使用似乎过于复杂的解决方案来检测“截断”。有更好的方法吗?非常感谢。我对任何lib或任何东西都不紧张。func(p*Parser)Read(data[]byte,tmpline*string,nint,bufSizeint){varlinestringstrdata:=string(data)scanner:=bufio.NewScanner(strings.NewReader(strdata))line=""forscanner.Scan(){ifline!=""{i

Go Lang- Gin : How to extract only the body (and ignore other garbage) from httputil. DumpRequest

我知道你可以从ioutil.ReadAll(c.Request.Body)但是使用httputil.DumpRequest转储,错误:=httputil.DumpRequest(c.Request,true)将给出正文内容以及其他值,最后是正文内容。Contenttype:application/jsonIP:127.0.0.1:36846headertoken:Contentlength:76RequestMethod:POSTRequestURL:/signupBody:POST/signupHTTP/1.1Host:127.0.0.1:8080Accept:/Accept-Enc