草庐IT

commons-logging-api

全部标签

unit-testing - 如何在向 API 发送 http 请求时进行模拟

我已经使用go-gin在Go中实现了一个ReSTAPI,我正在尝试测试一个如下所示的处理函数funceditNameHandler(c*gin.Context){//makeaReSTcalltoanotherservercallToAnotherServer()c.Status(200)}我想模拟callToAnotherServer方法,以便我的测试用例根本不调用第3方服务器。我的测试用例看起来像funcTestSeriveIdStatusRestorePatch(t*testing.T){//Requestbodysend:=strings.NewReader(`{"name":

Golang API - MySQL 连接但查询为空

首先让我说我是Golang的新手,并致力于使用Golang重构现有的基于Python的API,因此数据库和底层模式已经存在并填充了数据。我有一个使用Gin和Gorm的非常基本的API设置。在GETAPI调用期间,它能够连接到MySQL5.7后端,但我的查询都不会返回任何内容。我已尝试使用数据库中的已知序列号进行各种查询,并在我在此应用程序外部查询时返回这些序列号。ma​​in.gopackagemainimport("github.com/gin-gonic/gin"_"github.com/go-sql-driver/mysql""github.com/jinzhu/gorm""ti

go - 如何使用 Go 客户端 API 在 kubernetes 中创建和使用卷?

使用GoAPI在kubernetes中创建和挂载本地文件夹作为“持久卷”需要哪些步骤?(我正在使用minikube,并尝试执行上述操作,只是为了使用一些半持久存储)。我已经设法在我的JobSpec中定义了一个Volume和VolumeMount,我可以在minikube上成功运行一个作业(参见thiscode),但在作业以这种方式引用之前,卷似乎没有正确创建。我开始充实一些容器规范的代码,这在我的实验代码中被注释掉了,可以在thiscode中看到,但是我找不到将这个卷规范发送到哪里,因此kubernetes将创建它。有什么提示吗? 最佳答案

google-app-engine - 无法使用 appengine/log 找到日志

我有这个代码://main.gopackagemagnumimport("net/http""google.golang.org/appengine""google.golang.org/appengine/log")funcinit(){http.HandleFunc("/tasks/backup",handler)}funchandler(whttp.ResponseWriter,r*http.Request){ctx:=appengine.NewContext(r)log.Debugf(ctx,"TestingcrontasksusingGo")}//cron.yamlcron:

go - curl php为golang api返回状态代码0

我已经在golang中创建了一个getListapi。现在我正在尝试使用php-curl从我的php函数调用getListapi。我正在从我的php函数发出数千个请求。然而,大约15k请求得到了正确处理,但在15k-20k(数量不同)和更多请求之后,CurlCURLINFO_HTTP_CODE返回0并且responseis""并且curl_error返回空字符串。curl_errno返回7我的golanggetListapi很简单。它从数据库中获取数据并将其返回。它不包含任何goroutines。我不明白为什么在15k-20k请求之后它开始给我空响应。不知道是curl-php问题还是g

rest - 在 API Rest golang 中发送 cookie

我在Golang工作,我正在构建一个API-Rest并且想知道,我可以使用restful设置cookies吗?我正在构建与用户身份验证相关的方法:登录、注销、注册等,现在我正在尝试使用生成的uuid在响应中设置cookie。我有这个:funcLogin(whttp.ResponseWriter,req*http.Request,pshttprouter.Params){...somecode....c:=&http.Cookie{Name:"session",Value:uuid.NewV4().String(),}http.SetCookie(w,c)w.Header().Set("

angular - header http 未传送到我的 API

我正在Go中开发一个安静的API,在Angular中开发我的前端(没有AngularJS),但是当我在Angular中从我的Web应用程序调用我的API时,我在后端看不到我的header,在特殊情况下我的授权header,因为我的API具有基于JWT的身份验证。另外我想提一下,我正在使用Postman和GoRequest客户端来测试我的应用程序,并且我的header在我的API中交付没有问题。下面附上我的后端的CORS和来self的前端的API调用。我的后端:funcCors()gin.HandlerFunc{log.Println("CORSMiddleware")returnfun

docker golang API ContainerList 因 TLS 而失败

我在CoreOS上为dockerd配置了TLS身份验证;Clidockerimages返回有效的图像列表:REPOSITORYTAGIMAGEIDCREATEDSIZEbusyboxlatestc75bebcdd2113weeksago1.106MB但是在“go”代码中尝试:exportDOCKER_CERT_PATH=~/.dockerimages,err:=cli.ImageList(context.Background(),types.ImageListOptions{})返回空列表下面是我的docker配置:Client:Version:1.12.6APIversion:1.2

logging - 使用 io.Multiwriter 跨包/子包创建日志

我是Go的新手。目前,我正在编写一个工具来捕获所有stdout输出,并将它们合并到一个新文件中。为此,我使用了io.Multiwriter。但是,我的问题在于试图跨包和子包捕获所有stdout输出。目前,我的方法是创建一个新包,它对所有日志记录具有独占作用。每当其他包/子包之一有一些输出字符串时,我会将字符串发送到日志包,然后将多写到日志和标准输出。这听起来合理吗?如果是这样,通用日志记录包API应该是什么样的?另外,将用于输出/日志记录的字符串传递到日志包的好方法是什么?谢谢! 最佳答案 我想我会很好地使用已经可用的记录器包来满足

go - vim 去 : how to see the log of :GoTestFunc -v?

当我使用:GoTestFunc-v时,我只在测试失败时才看到日志,即使测试成功我也希望看到结果。谢谢 最佳答案 如果测试成功,vim-go总是清除输出窗口1.您可以破解本地vim脚本以更改行为,或在问题跟踪器中提交功能请求。 关于go-vim去:howtoseethelogof:GoTestFunc-v?,我们在StackOverflow上找到一个类似的问题: https://stackoverflow.com/questions/46440638/