草庐IT

post-map

全部标签

sockets - Golang HTTP POST 成功,但不调用 docker 操作

问题:虽然我可以在本地docker套接字上轻松地从curl发出GET和POST命令,但是当我尝试使用net.Dial在Golang中为dockerpull操作执行等效的POST操作时,我没有看到代表Docker采取的任何行动。请注意,与此同时,GET操作通过golang客户端使用docker套接字工作得很好。例如,当运行本文底部的代码时,我看到:2018/01/0514:16:33Pullinghttp://localhost/v1.24/images/create?fromImage=fedora&tag=latest......2018/01/0514:16:34Succeeded

json - 从 json post 请求中转义 html

我想将请求中的一些json转换为html,但它不起作用,解码json时出现错误import("html/template""encoding/json""net/http""io""io/ioutil""log")funcanyFunction(whttp.ResponseWriter,r*http.Request){body,err:=ioutil.ReadAll(r.Body)iferr!=nil{log.Print(err)}ri,wo:=io.Pipe()gotemplate.HTMLEscape(wo,body)vart[]customStructjson.NewDecode

json - 使用反射在 Go 中创建 map

我只是在尝试用Golang编写一个像jsoncpp一样易于使用的JSON读取器包装器。是否可以在Golang中创建具有动态类型的map?例如:packagemainimport"reflect"funcmain(){i:=1//typeintmyType:=reflect.TypeOf(i)//typeTypea:=make(map[string]myType)//makeamapofTypea["KEY"]=i//Assignaninttothemap}我是在做梦吗?有些人会说“这就是为什么Go具有类型interface{}”,但是,我不想做这样的事情:myMap["key"].(m

golang 取消引用 map

这是一个示例代码,它创建了一个值为bool的字符串键映射。myMap:=make(map[string]bool)myMap["Jan"]=truemyMap["Feb"]=falsemyMap["Mar"]=true在这张map上做了一些操作后,我想删除它。我不想使用for循环遍历每个键并删除。如果我再次重新初始化myMap(如下所示),它会取消引用原始map并接受垃圾回收吗?myMap=make(map[string]bool) 最佳答案 GolangFAQ关于垃圾收集:EachvariableinGoexistsaslonga

json - Golang http 请求 POST 工作一次

我有一个主人和一个奴隶。Master有api调用结果,它采用JSON。我有奴隶的问题,它在主人上发送这个结果,第一次我的代码发送json很好,但第二次,代码停止(程序等待.....)在resp,err:=client.Do(req),当在master上创建查询时。救助代码:funcmain(){for{//somecode,verylongcodesendResult(resFiles)}}funcsendResult(rfcommon.ResultFiles){jsonValue,err:=json.Marshal(rf)req,err:=http.NewRequest(method

go - map.LoadOrStore 返回的地址值是否与嵌套 map 的输入相同?

我正在做一个嵌套的sync.Map但我想知道如果LoadOrStore返回的值与map情况下的输入相同,我是否可以节省几行代码,我的意思是:varmapasync.MapmapaInterFace,ok:=sessiones.LoadOrStore(userID,mapa)ifok{mapa,ok=mapaInterFace.(sync.Map)if!ok{returnerrors.New("typeassertion")}}如果mapa和LoadOrStore返回值一样,我就可以直接使用,如果不一样就得在前面的代码后面加上,类型断言:mapa,ok=mapaInterFace.(sy

json - 从 json 合并两个 map[string]interface{}

我有两个以这种方式构建的json输入"count:1result:fields"我想在不使用已定义结构的情况下连接我在结果中找到的字段。我尝试了很多方法,但大多数时候结果是关于类型Interface{}或最后一个映射覆盖数据的错误我希望将“结果”以及第一个和第二个map字段合并到输出结果中。oracle,err:=http.Get("http://XXX:8080/XXXX/"+id)iferr!=nil{panic(err)}deferoracle.Body.Close()mysql,err:=http.Get("http://XXX:3000/XXX/"+id)iferr!=nil

go - 多阅读器的并发 POST 不返回响应

我有一个使用echo的概念验证http服务器它接受带有JSON正文的POST请求。我正在尝试使用管道和多写入器将请求主体流式传输到多个POST请求,但它无法正常工作。在下面的示例中,我可以看到数据被发送到2个POST端点,我可以看到来自这些请求的日志,但我从未收到回复,似乎代码挂起等待http.Post(...)要完成的功能。如果我直接调用这2个端点,它们可以正常工作并提供有效的json响应,所以我相信问题出在这段代码上,它是我的路由处理程序。funcImportAggregate(cecho.Context)error{oneR,oneW:=io.Pipe()twoR,twoW:=i

templates - 如何在 Go html/template 中获取 map 元素的结构字段?

我有一个结构任务:typeTaskstruct{cmdstringargs[]stringdescstring}然后我初始化了一个映射,它将上面的Task结构作为一个值,一个string作为键(任务名称)vartaskMap=map[string]Task{"find":Task{cmd:"find",args:[]string{"/tmp/"},desc:"findfilesin/tmpdir",},"grep":Task{cmd:"grep",args:[]string{"foo","/tmp/*","-R"},desc:"grepfilesmatchhavingfoo",},}我

pointers - 在 Golang 中取消引用 map 索引

我目前正在学习Go,我制作了这个简单粗暴的list程序,只是为了修补结构和方法以了解它们的工作原理。在驱动程序文件中,我尝试从Cashier类型的项目映射中调用方法和项目类型。我的方法有指针接收器直接使用结构而不是制作副本。当我运行程序时出现此错误.\driver.go:11:cannotcallpointermethodonf[0].\driver.go:11:无法获取f[0]的地址Inventory.go:packageinventorytypeitemstruct{itemNamestringamountint}typeCashierstruct{itemsmap[int]ite