草庐IT

$http-get-post

全部标签

unit-testing - 数据库连接get的单元测试策略

被测代码中有一个方法,它只是尝试获取数据库连接,如果无法连接则返回错误。它,以及涉及的结构体定义如下:typeDatabaseContextstruct{ContextDatabaseDatabaseSt}////GetInfoReturnsthecontext.//func(c*DatabaseContext)GetInfo()*Context{//return&c.Context//}//GetDBGetsthedatabaseconnectionfromtheconnectionstring.func(c*DatabaseContext)GetDB()(*sql.DB,*erro

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

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

go - 无法从 Postman 中的 Get Url 获取对象 ID

似乎我的网址不匹配,因为它显示了404错误,我也尝试更改postman和我的代码中的网址。还尝试使用对象ID转换来查看404是否由此引起。funcmain(){r:=gin.Default()r.GET("/get-custone/:_id",getDetailone)r.Run()}funcgetDetailone(c*gin.Context){session:=connect()defersession.Close()col:=session.DB("test").C("cust")varresultsPersonidstring:=c.Param("_id")oid:=bson.

json - Beego httplib.get 过滤JSON

我是Golang的新手,遇到了一个问题。我使用包github.com/astaxie/beego/httplib,尝试从API获取信息res:=httplib.Get("example.com")typeSomeStructstruct{TypestringIdstring//...}varitemStructSomeStructerr:=res.ToJSON(&itemStruct)问题:在API响应中,Id字段可能是字符串或数字(取决于类型字段),这就是为什么我得到错误json:cannotunmarshalnumberintoGovalueoftypestring。我想,我必须在

http - 大摇大摆的 WriteResponse

我正在使用go-swagger,但我有一种情况,我想将一个字符串写入响应。我需要调用“WriteResponse”函数WriteResponse(rwhttp.ResponseWriter,producerruntime.Producer)我遇到的问题是我不知道如何将字符串转换为http.ResponseWriter并创建runtime.Producer。如果有帮助,这里是我的代码片段...//convertthedatabaseresponsetoastringarrayofvalidJSONstringArray,conversionError:=plan.ConvertPlanA

json - 使用 net/http 在 PUT "Body length 0"上出现错误

我在我的应用程序上使用这个GoAPI客户端https://github.com/heroku/docker-registry-client使用Go与dockerregistry交互。这种情况是在使用包“net/http”进行PUT请求时在内部遇到一些问题。当我运行以下代码时,出现错误Puturl:http:ContentLength=2821withBodylength0。所以看起来net/httpClient.Do()函数没有得到我在函数的某个点设置的主体。但是正如您在下面的代码中看到的那样,我仍然有我想要在[]byte中发送的JSON内容。body,err:=manifest.Ma

http - 通过一个 http.ResponseWriter 发送少量响应

在我点击前端的发布按钮后,我将数据接收到我的处理程序,创建电子邮件并发送它,但我想通知用户电子邮件的状态(已发送或未发送)并将其重定向回主页。问题是我不知道如何同时传递alert和redirectingtomainpage。这是一个处理程序代码:funccontactHandler(whttp.ResponseWriter,r*http.Request){ifr.Method==http.MethodPost{r.ParseForm()/*creatingemail*/err:=smtp.SendMail("smtp.gmail.com:587",smtp.PlainAuth("",*

c - 在 libpango 中调用 pango_cairo_font_map_get_default() 时出现 "GLib-GObject-CRITICAL"的原因是什么?

这是一道关于gtk/glib/libpango/libcairo的概念题。让我们直奔问题。我正在用一位前同事用Go编写的旧C库进行包装,在C代码调用的某处pango_cairo_font_map_get_default()获取由libpango维护的默认font_map。包装基本上是从Go域进入C域(外部函数接口(interface))和C端使用pthread创建一个线程最终调用pango_cairo_font_map_get_default。最初,在纯C端一切正常。包装后,C代码卡在调用pango_cairo_font_map_get_default()printf("beforec

angular - 标题未在 POST 响应中设置

这个问题在这里已经有了答案:Angular2doesn'tsavemyAuthenticationCookiewithCORS(2个答案)关闭4年前。我有一个用Go编写的POSTAPI端点,我在Golang响应中设置了一个名为Set-Cookie的header。我已经设置了cors并且调用返回了正确的值。问题是响应中的header是空的。如果我查看我的网络选项卡,它说我的Set-Cookieheader正在返回我期望的值,它只是在Angular上是空的(请参阅我的response.headers和我的网络的console.log的屏幕截图选项卡)。编辑在golang中设置set-coo

go - 如何从 *http.Request 和 *httptest.ResponseRecorder 创建 gin.Context?

我想为gin创建一个测试助手类似于testify'sHTTPBodyContain.我很难从*http.Request和*httptest.ResponseRecorder创建gin.Context。我已经写过这样的东西:funcHTTPBodyContains(t*testing.T,handlergin.HandlerFunc,method,urlstring,valuesurl.Values,strinterface{},msgAndArgs...interface{})bool{body:=HTTPBody(handler,method,url,values)contains: