草庐IT

arrays - 如何在 json 响应中设置数组 goLang-gin

我有一个结构数组存储一个变量我的数组。结构是typemyStructstruct{idint64`db:"id"json:"id"`Namestring`form:"name"db:"name"json:"name"binding:"required"`Statusstring`form:"status"db:"status"json:"status"binding:"required"`我的数组看起来像这样并存储在变量“myArray”中。该数组是通过迭代来自数据库的一组行而形成的。[{1abcdefault}{2xyzdefault}]我使用gin作为http服务器。如何使用c.J

Go-gin拦截请求体

我正在使用go-gin作为服务器并尝试解码请求正文。当我发送同时包含两个字符串的请求时{"name":"abc"}以下代码正确解码:vardecodedBodymap[string]stringerr=json.NewDecoder(c.Request.Body).Decode(&decodedBody)但是如果我发送{"id":1}下面的代码给我一张空白mapvardecodedBodymap[string]interr=json.NewDecoder(c.Request.Body).Decode(&decodedBody)不确定我在这里错过了什么。有什么指点吗?

ssl - 使用 go-gin 以编程方式自动接受证书

我正在使用golanggo-gin服务器托管应用程序。前端和后端都通过https工作,并且都是独立的项目。前端对基于restAPI的后端进行ajax调用。如果我清除浏览器缓存(GoogleChrome)并尝试加载UI,它最初不会与后端API通信。然后在另一个选项卡中,我点击基本url(https://localhost:8080/)接受证书,然后它就可以工作了。有什么办法可以避免这种情况吗?我希望前端应该自动接受证书而不是提示它。 最佳答案 在tls.Config中,您可以找到Certificates属性,这可能对您的情况有帮助:C

validation - 结合 GO GIN-GONIC GORM 和 VALIDATOR.V2

我是Go的新手,我想通过设置GIN-GONICAPI来启动。我找到了这个tutorial我对那个骨架很满意。但现在我坚持使用我添加的验证过程:“gopkg.in/validator.v2”和typeTodostruct{gorm.ModelTitlestring`json:"title"`Completedint`json:"completed"`}成为typeTodostruct{gorm.ModelTitlestring`json:"title"**validate:"size:2"**`Completedint`json:"completed"`}然后在我添加的CreateTod

Golang gin-gonic 反向代理导致 panic "interface conversion: *http.timeoutWriter is not http.CloseNotifier: missing method CloseNotify"

我正在使用GinGonic创建反向代理端点的框架,目标端点使用grpcGateway提供服务使用下面给出的代码。这类似于为Gin建议的反向代理方法here和hereep1:=v1.Group("/ep1"){ep1.GET("/ep2",reverseProxy("http://localhost:50000"))}funcreverseProxy(targetstring)gin.HandlerFunc{url,err:=url.Parse(target)iferr!=nil{log.Println("ReverseProxytargeturlcouldnotbeparsed:",e

go - 如何测试 Gin 应用程序中的主要功能?

如何测试funcmain?像这样:funcmain(){Engine:=GetEngine()//returnsginrouterwithhandlersatttachedEngine.Run(":8080")}它只有2行,但我想将它们覆盖。TestMain'是为测试准备保留的,这是否意味着测试main不是语言创建者计划的?我可以将内容移动到另一个函数mainReal但它似乎有些过度工程?如何测试gin是否启动良好?我可以在单独的goroutine中启动main,检查回复并停止它吗?谢谢。附言可能的重复不是精确的重复,因为它不是致力于测试funcmain()本身,而是致力于向外移动的想

go - 无法使用 Gin 加载 HTML 模板

我在通过r.HTMLRender设置使用Gin框架加载html模板时遇到了一些问题。似乎找不到模板。我曾尝试使用以下助手:GinHTMLRender:https://gist.github.com/madhums/4340cbeb36871e227905EZGin模板:https://github.com/michelloworld/ez-gin-template在设置模板的默认路径时,这些似乎都不起作用(在我的例子中是app/views);为了达到这个目的,我的html模板文件结构如下所示:/workspace|-app|-views|-layouts|-application.ht

mongodb - 使用 Gin 和 JobRunner

我正在使用JobRunner用于我的Golang项目的调度程序和Gin-gonic框架。我已经尝试过这个包并且它有效。问题是,当我想连接到我的数据库时,我无法访问调度函数中的gin上下文funcScheduleUrl(){jobrunner.Start()//optional:jobrunner.Start(poolint,concurrentint)(10,1)jobrunner.Schedule("@every20s",CheckExpiredUrl{})}//JobSpecificFunctionstypeCheckExpiredUrlstruct{//filtered}//Re

mongodb - 使用 gin-golang 将数据从 mongodb 显示到 html 页面?

我正在尝试检查MongoDB是否包含具有特定用户名和密码的数据。但是现在我得到的是所有数据而不是指定的数据。下面是我的代码:r.POST("/login",func(c*gin.Context){logedUser:=[]RegisterdUser{}name:=c.PostForm("userName")Password:=c.PostForm("userPassword")fmt.Println("insidecheckingsectionnnn",name,Password)session,err:=mgo.Dial("localhost:27017")iferr!=nil{pa

go - 在golang中使用gin包为特定路由表达中间件?

我为成功运行的路由制作了一个中间件,但有一个小问题,它会应用于所有路由,包括signup和login。我想社交signup和login路线,所有用户都将访问这两条路线。以下是我正在使用的代码:-路线.go/*SignupRoute*/Route{"SaveUser","POST","/signup",controller.SaveUser},/*LoginRoute*/Route{"LoginUser","POST","/login",controller.Login},/*AllCustomersRoutes*/Route{"SaveCustomers","POST","/custo