草庐IT

主程序

全部标签

go - 我可以在应用引擎上部署 Golang 应用程序并在不修改代码的情况下读/写文件吗?

我已经在Go中创建了一个网络应用程序,我希望能够以最流畅的方式在服务器或应用程序引擎上运行它。基本上我创建了一个.exe(我在Windows上开发)和一组包含静态文件的文件夹。另外还有一个文件夹,里面有N个配置文件。这些配置文件包括设置数据库所需的所有配置、写入日志的文件夹/路径等。在“时间0”,当我双击本地计算机上的.exe时,安装过程开始。它查看配置文件(如果它们不存在,它们甚至会被创建)并根据我在控制台上给出的答案更新它们。此外,应用程序会在文件系统上生成日志文件。我的问题:我可以“按原样”在AppEngine上“上传”我的Go代码,只在yaml文件中包含一些特定于AppEngi

database - 在 go http 中的自定义处理程序中传递 *gorm.db 实例的最佳实践

我正在创建一个自定义网络处理程序来处理网络应用程序中的路由。处理程序是typeCustomHandlerstruct{Db*gorm.DB}然后是接收函数:func(hCustomHandler)Index()http.Handler{returnhttp.handlerFunc(whttp.ResponseWriter,r*http.Request){//Somecode//useh.Db.Find(),etc.})我将其传递给我的路由器作为//InpackagecustomHandler:=&CustomHandler{*gormInstance}//I'vealreadygott

go - 如何对嵌入结构的 http 处理程序进行单元测试?

我有以下结构typeServerstruct{*http.Serverchaincore.BlockchainercoreServer*network.Server}与其对应的handlerfunc(s*Server)methodHandler(whttp.ResponseWriter,req*Request,reqParamsParams){.....}如何对我的handler进行单元测试? 最佳答案 上面的处理程序func(s*Server)methodHandler(whttp.ResponseWriter,req*Reque

qt - 是否可以在 Qt(Golang 绑定(bind))应用程序中使用 Sparkle?

我们构建一个Qt应用程序使用:https://github.com/therecipe/qt.现在我们需要一个自动更新程序并找到这个:https://sparkle-project.org看起来它正在被我机器上的多个应用程序使用:/Applications/VLC.app/Contents/Frameworks/Sparkle.framework/Applications/Adium.app/Contents/Frameworks/Sparkle.framework/Applications/TeamViewer.app/Contents/Frameworks/Sparkle.fram

multithreading - 多人围棋程序

我有一个简单的程序,可以生成随机字符串和数字并将其放入特定格式:输出:A=SKEK673KJKB=67235C=PDCNE39JSWL我有4个函数,包括main:funcgenRandInt()string{//returnstring(randInt)}funcgenRandStr()string{//return(randStr)}funcgenFakeData()string{fmt.Println("A="+genRanStr()+genRandInt().....etc)}funcmain(){genFackeData()}到目前为止程序运行良好,我通过bash循环执行它以便

Go 应用程序在 NGINX 代理 : HTTP 502 后面不工作

我正在为Go中的webhook创建一个接收器,这是我在Go中的第一个应用程序。我已经在本地测试了该应用程序,它在那里可以正常工作。但现在我已经将它部署在我的Ubuntu服务器上,位于NGINX代理后面的Docker容器中(代理在Docker之外)。pingHandler起作用,gitlabHandler可以发送403消息。但如果token有效,我将始终看到502消息并且NGINX日志告诉我:*1115upstreamprematurelyclosedconnectionwhilereadingresponseheaderfromupstream,client:X.X.X.X,serve

go - 通过 jenkins 部署 go 应用程序

我刚刚创建了两个EC2实例,一个使用Jenkins,一个用于go应用程序。我设法创建了一个节点和一个协同工作的作业,在开始构建go应用程序的作业后,我在工作区文件夹中获得了go文件。而且我不明白从现在开始我需要做什么。我无法运行gorunserver.go,因为它不在gosrc文件夹中,所以我收到命名空间不存在的错误。这是我得到的错误:server.go:7:2:cannotfindpackage"freelancers/daos"inanyof:/usr/lib/golang/src/freelancers/daos(from$GOROOT)/home/ec2-user/projec

go - 使用 Cassandra GOCQL 驱动程序 (Golang) 确定页面状态

我一直在努力思考如何使用Golang中的驱动程序在ApacheCassandra中进行分页。我有以下用于获取行的代码///Assumeallotherprerequisites.session,_:=cluster.CreateSession()session.SetPageSize(100)varpagestate[]bytequery:=session.Query(`select*fromkeyspace.my_table`)query=query.PageState(pagestate)iferr:=query.Exec();!=nil{panic(err)}iter:=quer

go - 如何将一些事件更新从 http 处理程序发送到 WebSocket 处理程序

我是Go语言的新手,正在尝试了解channel。为了理清我的理解,我观看了视频教程,阅读了一些书籍,但在使用Go编写的Web应用程序中进行实际编码和channel使用时,我仍然感到困惑。我想要做的是拥有2个URL:显示或获取值的通常的正常GET或POSTURL和处理它。在后端做一些处理,我希望处理要在websocket更新中发送的输出URL,因此不需要窗口刷新/重新加载。基于Gorilla包的websocketsURL。以下是迄今为止我尝试过的测试代码,它仍然是我试图制定解决方案的困惑代码的精简版本://filemain.gopackagemainimport("io""net/htt

go - 无法在 golang 网络应用程序中重定向。它坚持一页

这是来自名为upload.go的文件的代码片段。我尝试了很多方法来重定向到另一个页面。当POST中的语句运行完成时,我想重定向到另一个页面。packagemainimport("fmt""io""net/http""os""text/template")funcupload(whttp.ResponseWriter,r*http.Request){ifr.Method=="GET"{//GETt,_:=template.ParseFiles("upload.gtpl")t.Execute(w,nil)}elseifr.Method=="POST"{//Postfile,handler,