jjzjj

图像的 Golang 路径和上传得到混合结果

我已经成功地将图像上传到我的ImageStore帐户,但是我不得不对每个文件路径进行硬编码。我的问题是我的图像位于我的GoPath之外,有什么方法可以在不对图像进行硬编码的情况下获取图像的实际目录?例如GoPath="/Users/IH/Documents/go"实际图片路径="/Users/IH/Documents/pictures/horse_PNG2538.png"我得到的路径="/Users/IH/Documents/go/src"我需要获取图像的正确路径,因为用户将能够上传他们的图像,显​​然他们都将有不同的图像路径。这是我的代码myfile,handler,err:=r.F

email - 在网站中匹配正则表达式电子邮件

我尝试在goland的网站中使用文件包含url查找电子邮件匹配项,例如,如果我在文件中放入“http://facebook.com”,他将尝试在网站中查找所有电子邮件,但他总是结果0。我想我选择了错误的功能,但我试图找到其他功能,但我得到了相同的结果。这里的代码:packagemainimport("bufio""bytes""fmt""log""net/http""os""regexp""sync")funcmain(){varwgsync.WaitGroupwg.Add(1)goemailWeb(os.Args[1],&wg)wg.Wait()}funcemailWeb(names

go - 如何使用 firego 从 firebase 获取值?

我正在尝试使用firego从firebase数据库中检索值。我在github上找到了解决方案varvmap[string]interface{}iferr:=f.Value(&v);err!=nil{log.Fatal(err)}fmt.Printf("%s\n",v)但是,我无法实现上面的代码。我必须从名为Employee_Details的child那里检索。我该怎么做? 最佳答案 我自己找到了解决方案:v:=map[string]employeeDetails{}err:=dB.Child("Employee_Details")

pointers - 如何跨包中的文件使用全局变量?

我有以下文件结构:模型/db.gotypeDBstruct{*sql.DB}vardb*DBfuncinit(){dbinfo:=fmt.Sprintf("user=%spassword=%sdbname=%ssslmode=disable",DB_USER,DB_PASSWORD,DB_NAME)db,err:=NewDB(dbinfo)checkErr(err)rows,err:=db.Query("SELECT*FROMprofile")checkErr(err)fmt.Println(rows)}funcNewDB(dataSourceNamestring)(*DB,error

postgresql - 如何在 Go 应用程序中处理打开/关闭 Db 连接?

我的WebAPI应用程序中有一组函数。他们对Postgres数据库中的数据执行一些操作。funcCreateUser(){db,err:=sql.Open("postgres","user=postgrespassword=passworddbname=api_devsslmode=disable")//Dosomedboperationshere}我想函数应该相互独立地与db一起工作,所以现在我在每个函数中都有sql.Open(...)。我不知道这是否是管理数据库连接的正确方法。我是否应该在应用程序启动后在某个地方打开它,并将db作为参数传递给相应的函数,而不是在每个函数中打开连接?

go - 为 io.Reader 添加前缀

我编写了一个小型服务器,它以io.Reader的形式接收一团数据,添加一个header并将结果流式传输回调用者。我的实现不是特别有效,因为我在内存中缓冲blob的数据,以便我可以计算blob的长度,这需要构成header的一部分。我看过一些io.Pipe()和io.TeeReader的例子,但它们更适合拆分io.Reader分成两部分,并将它们并行写入。我正在处理的blob大约是100KB,所以不是很大,但是如果我的服务器变得繁忙,内存很快就会成为一个问题...有什么想法吗?funcaddHeader(inio.Reader)(outio.Reader,errerror){buf:=n

Golang Gorilla Websocket 在 120 秒时停止接收信息

我目前正在尝试连接到CEX.IO比特币交易所的websocket,但不仅与CEX.IO有问题,与其他人也有问题。我的所有连接都在120秒左右下降,这让我觉得存在一些TTL问题。主包中的Process()goroutine最终只是挂起并等待来自readLoop的数据,而readLoop只是停止接收数据。我在代码中包含了一些只读APIkey,因此您可以根据需要进行测试。packagemainimport("fmt""bitbucket.org/tradedefender/cryptocurrency/exchange-connector/cexio""github.com/shopspri

sql - 如何推迟 Postgres 中的外键约束

我试图设置一个可延迟的外键约束,这样当我插入查找/数据透视表时直到事务结束时才检查它。但是,它在psqlshell中工作,但它在代码中不起作用。与在psqlshell中一样,我也在代码中使用begin开始事务。这是sql:createtablecampaign_r_company(campaign_iduuidnotnullreferencescampaign(id)ondeletecascadedeferrableinitiallydeferred,company_idvarchar(32)notnull,primarykey(campaign_id,company_id));代码如

sql - 如何使用Golang直接从文件执行mssql脚本

我一直在寻找上述问题的答案,但没有成功。对不起,如果它是重复的。所以基本上我试图直接从文件中执行一个sql脚本,但我一直收到“''附近的语法不正确。”错误funcAnotherDatabase()(sql.Result,error){rc,err:=os.Open("./myscript.sql")iferr!=nil{returnnil,err}buf:=new(bytes.Buffer)buf.ReadFrom(rc)contents:=buf.String()db,err:=sql.Open("mssql","mydatabase")iferr!=nil{returnnil,er

multithreading - 如何测试在 goroutine 中监视文件的函数

我有一个函数可以通过fsnotify监视certian文件并在文件更改时调用回调。如果回调返回false,则观看结束:import("github.com/golang/glog""github.com/fsnotify/fsnotify")typeWatcherFuncfunc(errerror)boolfuncWatchFileChanges(filenamestring,watcherFuncWatcherFunc){watcher,err:=fsnotify.NewWatcher()iferr!=nil{glog.Errorf("Goterrorcreatingwatcher%