草庐IT

mongo-client

全部标签

mongodb - 在 mongo-go-driver 中将 json 参数转换为 bson for UpdateOne

我正在尝试使用mongo-go-driver库的UpdateOne但此方法采用bson文档。我给它一个接口(interface)参数(json)。我的问题是找到将我的json请求解析为bson以动态更新字段的最佳方法。谢谢。func(sStore)Update(id`entercodehere`bson.D,dinterface{})(*mongo.UpdateResult,int32,string){upd:=bson.D{{"$inc",bson.D{d,},},}c,ctx,_:=getCollection(s.conn,s.dbName,s.collectionName)res

mongodb - 带有重试的 Mongo go 驱动程序事务实现

我正在尝试在mongodb中构建具有重试功能的事务,类似于nodejs等其他驱动程序。这是我当前的实现ifsession,err=client.StartSession();err!=nil{returnerr}iferr=session.StartTransaction();err!=nil{returnerr}iferr=mongo.WithSession(ctx,session,func(scmongo.SessionContext)error{ifresult,err=collection.UpdateOne(sc,bson.M{"_id":id},update);err!=n

mongodb - mongo-go-driver 的 clientOptions 默认值是多少?

我试图为mongo-go-driver搜索clientOptions的默认值。我正在尝试通过以下方式启动新客户:opts:=options.ClientOptions{}opts.ApplyURI(connectionURI)sharedConnection,err=mongo.NewClient(&opts)我想知道一些clientOptions(例如ConnectTimeout、MaxPoolSize、MaxConnIdleTime)的默认值是多少。typeClientOptionsstruct{ConnectTimeout*time.DurationCompressors[]st

mongodb - Mongo go 驱动的 DocumentCount 不支持 $nearSphere

我正在处理地理位置查询,我想获得满足地理位置查询的集合总数。Mongogo库提供DocumentCount方法,不支持基于地理位置的过滤。我得到的错误是:(BadValue)在此上下文中不允许使用$geoNear、$near和$nearSpherefilter:=bson.D{{Key:"address.location",Value:bson.D{{Key:"$nearSphere",Value:bson.D{{Key:"$geometry",Value:bson.D{{Key:"type",Value:"Point",},{Key:"coordinates",Value:bson.

json - 如何获取 Mongo 文档并将它们作为 JSON API 响应返回

我正在编写一个API,用于检索Mongo文档并将这些文档作为JSON响应返回。我当然可以通过创建具有适当字段映射的结构来做到这一点,但由于我不处理这些文档,我只是想将从下面的代码中获得的原始数据转换为JSON。然后,我的API将返回JSON作为响应。我有以下代码:varraw[]bson.Rawerr=myCollection.Find(bson.M{"name":name},).All(&raw)我想将原始格式转换为JSON。我该怎么做?除了开始创建bson.Raw之外还有更好的方法吗?Techstack:Go1.1mgov1http://godoc.org/labix.org/v1

sockets - 如何找到 IP :Port of incoming client in TCP Connection

收到来自conn,err:=listener.Accept()的连接后,我想在conn的另一端找到客户端的地址。我已经尝试使用conn.LocalAddr()和conn.RemoteAddr()(Documentation)来执行此操作。.LocalAddr()只是给出服务器进程的地址。.RemoteAddr()为客户端提供了正确的IP,但与我所知道的客户端绑定(bind)的端口号截然不同。如果它有什么不同,我用在同一台机器上运行的两个独立进程来做这件事。一个是客户端,一个是服务器。关于如何找到客户端的正确IP:Port的任何想法?我是要使用LocalAddr还是RemoteAddr?

go - 使用 code.google.com/p/google-api-go-client/youtube/v3 的 YouTube v3 api

尝试从我的channel获取上传列表,但出现错误“ChannelContentDetails没有上传字段或方法”apiCall:=youtube.Channels.List("contentDetails").Mine(true)response,err:=apiCall.Do()iferr!=nil{log.Fatalf("ErrormakingAPIcall:%v",err.Error())}fmt.Println(response.Items[0].ContentDetails.uploads) 最佳答案 response.I

mongodb - Mgo(mongo for go)支持物化路径?

使用BSON和Mgo(用于go的丰富mongodb驱动程序),一种方法将如何实现物化路径?物化路径已记录here在mongo文档上。物化路径旨在为多层嵌套数据提供树状结构。使用纯javascript,命令如下(来自documentation):db.categories.insert({_id:"Books",path:null})db.categories.insert({_id:"Programming",path:",Books,"})db.categories.insert({_id:"Databases",path:",Books,Programming,"})db.cate

mongodb - 使用 Golang 和 MGO 创建一个返回 mongo 集合的函数

我是GOLANG的新手-我想降低我的GOAPI中处理程序的复杂性。我来自Node.js背景!目前路由处理器看起来像这样:funcgetCards(cweb.C,whttp.ResponseWriter,r*http.Request){session:=*MongoConnection().CreateSession()defersession.Close()collection:=session.DB(db).C(cardsCollection)result:=[]Card{}err:=collection.Find(bson.M{}).All(&result)iferr!=nil{p

api - 如何使用 Golang 的 github.com/google/google-api-go-client/customsearch/v1

我已经完成了人们说不需要的Oauth回调,只需要cx代码,但我还没有弄清楚如何将cx参数添加到调用中。packagemainimport("fmt""log""github.com/vinniyo/authCallback""github.com/google/google-api-go-client/customsearch/v1")funcmain(){client,err:=authCallback.BuildOAuthHTTPClient()iferr!=nil{log.Fatalf("ErrorbuildingOAuthclient:%v",err)}service,err: