草庐IT

json - 使用 jsoup 抓取站点并在 golang 中生成 json

我想抓取一个网站(bbs.archusers.ir)以便为用户发布新帖子或主题通知。我尝试为阅读名称、上次更改日期和每个部分的URL编写下面的代码,并将其保存到结构中,并将结构保存到JSON对象中。但是我的结构中的链接部分不会获得任何值,并且会出现在我的控制台中,这是我的代码packagemainimport("fmt""github.com/anaskhan96/soup""log""os""encoding/json")typeMessagestruct{NamestringDatestringlinkstring}typemyJSONstruct{Array[]Message}v

json - 在 golang 中持久化嵌套结构

我想添加持久化并从json初始化。我正在尝试保存/加载嵌套结构并收到“fatalerror:堆栈溢出”。据我了解,原因是父结构和子结构都有指向彼此的指针,并且json库正在进入循环。我需要指向Parent的指针,因为需要从child那里访问它。我知道这是一个常见问题,解决它的最佳方法是什么?typeMcloudstruct{Projectsmap[string]*Project`json:"Projects"`Workdirstring}typeProjectstruct{NamestringNetworksmap[string]NetworkParent*McloudTFCTFCon

string - 通过分隔符扩展一串 slice

我想用分隔符“/”展开一串slice。例如展开下面的slices:=[]string{"5/3","9","5/4/1","6"}应该生成单独的slice:["5","9","5","6"]["5","9","4","6"]["5","9","1","6"]["3","9","5","6"]["3","9","4","6"]["3","9","1","6"]我几乎被困在这里varc[][]string{}s:=[]string{"5/3","9","5/4/1","6"}for_,v:=ranges{combos:=strings.Split(v,"/")for_,combo:=ran

go - 获取变量\"$address\"不能是非输入类型\"String!\in go-graphql

我已经使用graphql-go库在go中成功设置了一个GraphQL服务器。但是,在进行查询时传递查询参数时,我似乎遇到了错误。所以我有一个名为emails的查询,它将address作为参数并查询数据库以返回与给定address关联的所有电子邮件的结果.当我直接传递address参数时,一切似乎都很完美,正如您从这张图片中看到的:但是,当我向它传递查询参数时,它似乎不起作用,如下所示:我不认为这两个语句应该给出相同的结果。然而,情况似乎并非如此。有人可以帮助我理解为什么会出现这些错误吗?这是我的代码packagemainimport("log""net/http""github.com

go - 通过简单的乒乓测试对 channel 进行基准测试

我有一个简单的2文件go应用程序。我正在尝试对2个channel上的ping和pong消息进行基准测试。目标是运行基准测试以查看可以完成多少来回ping和pong(这就是为什么我要通过这些尝试,以便基准测试可以在不同的输入下继续运行)出于某种原因,它只在我运行时才在本地显示:gobuild./main输出:pingpongpingpongpingpongpingpongping为什么迭代这么少就结束了?主.gopackagemainimport("fmt")funcmain(){PingPong(1000)varinputstringfmt.Scanln(input)fmt.Print

algorithm - 从N个元素的 slice 生成K个元素的算法

我正在尝试从Go中的thisStackoverflowquestion移植算法。我正在尝试使用的算法如下:给定任意长度的字符串slice和“深度”,找到原始slice中长度为深度的元素的所有组合。例如,如果给定一个包含A,B,C,D,E和F且深度为3的slice,则结果应为:[A,B,C][A,B,D][A,B,E][A,B,F][A,C,D][A,C,E][A,C,F][A,D,E][A,D,F][A,E,F][B,C,D][B,C,E][B,C,F][B,D,E][B,D,F][B,E,F][C,D,E][C,D,F][C,E,F][D,E,F]我已经尝试在上述Go语言中实现一些建

json - 在解码之前从 json 之类的字符串中去除无效 json 字符的最佳方法

为了提供一些背景知识,我正在使用adblogcat和idevicesyslog从android和ios设备读取设备日志。我所关注的具体日志是通过adblogcat/idevicesyslog将swift/c#/java/etc字典转换为字符串。我希望获取这些包含类似字符串的JSON的日志,并将它们转换为有效的JSON。这在大多数情况下都没有问题。但是,有时这些日志/字符串输出包含(\134、\M、\t等)等字符,在解码为JSON时会导致问题。我将它们解码为JSON以将它们发送到其他地方。例如,原始设备日志可能包含如下内容:{"foo":"bar","foo":"bar\134/\134

string - 如何使用带界面的 Sscan

我正在使用fmt.Sscan将字符串转换为任何类型,这是我正在做的:packagemainimport("fmt""reflect")functest()interface{}{return0}funcmain(){a:=test()//thiscouldbeanytypev:="10"//thiscouldbeanythingfmt.Println(reflect.TypeOf(a),reflect.TypeOf(&a))_,err:=fmt.Sscan(v,&a)fmt.Println(err)}此代码失败是因为Sscan不接受接口(interface)作为第二个值:can'tsc

string.endswith(“”)在IE中不起作用(不确定如何使用polyfill)

我在用string.endswith()通过JSON对象循环并找出对象的任何属性是否endswith一个"Value"基因。发现对象属性是否结束后"Value",我试图将属性的价值舍开2个小数,默认情况下是5个小数。这是我的代码varMyObj=[{"$id":"1","GeoName":"EAST","ReachValue":87.88221970554928,"ReachValue":90.71955219607294,"DepthValue":18.44377295716579,"ShareValue":16.732108234801206},{"$id":"2","GeoName":"

go - 如何将空值返回到空字符串字段

我在Golang应用程序中有这样的struct:typeEmployeestruct{IDint`json:"employee_id"`Email*string`json:"employee_email"`LastName*string`json:"employee_last_name"`FirstName*string`json:"employee_first_name"`Sex*string`json:"employee_sex"`}该结构的某些字符串字段可以为空。如果我使用*string应用程序返回我""。如果使用sql.NullString它返回我例如这样的结果:"employ