草庐IT

web-medical-data-engineering

全部标签

web-services - 使用 gin-gonic 编写 Web 服务的最佳实践是什么

在其他框架(如RubyonRails)中,它们具有目录结构,例如在何处保存模型相关代码、在何处保存View相关代码、在何处保存Controller相关代码以及在何处播种数据库。gin-gonic有没有目录组织?或者有什么建议吗? 最佳答案 Gin不是一个自以为是的框架。这是我为REST服务遵循的目录结构契约(Contract)包含请求者与服务之间的契约(Contract)每个资源的请求结构每个资源的响应结构错误响应结构核心此目录包含执行实际工作的代码不管请求最初是httpHTTP服务路线http处理程序处理http请求等的代码这种方

google-app-engine - 谷歌数据存储全局连接

您将如何为数据存储客户端声明一个全局变量?到目前为止,我有:var(dbdriver.Connctxcontext.Contextclientdatastore.Client)忽略数据库。这是我的全局数据库连接器。funcbootstrap(){ctx=context.Background()pId:=ProjectIdvarerrerrorclient,err=datastore.NewClient(ctx,pId)iferr!=nil{fmt.Printf("caughterror:%v\n",err)}}我的错误是:无法在多个分配中将*"cloud.google.com/go/d

google-app-engine - goapp 测试不工作,得到错误 "GOPATH must be absolute"而它是绝对的

我正准备为我的谷歌云应用程序编写测试。我阅读了文档,似乎在本地运行测试的唯一方法是在测试包目录中运行命令goapptest。但是当我运行命令时,出现错误go:GOPATHentryisrelative;必须是绝对路径:"".我很确定我的GOPATH已绝对设置。以下是我运行命令goenv|时的结果grepGOPATH:GOPATH=":/home/mohammad/go:/home/mohammad/go/src/gitlab.com/gc-auth"当我运行echo$GOPATH时也得到相同的输出。感谢任何帮助。PS:我有ubuntu18.04,我的go版本是1.10.4gcloud版

go - 在 Web 应用程序中运行计划任务

我想每5分钟运行一次任务来更新我网站上的统计数据而不阻塞HTTP服务器。我刚刚添加了带有工作人员示例的基本HTTP服务器逻辑。如果我像这样添加多个任务,这是否被认为是不好的做法,还是有更好的方法?packagemainimport("fmt""net/http""time")funcHome(whttp.ResponseWriter,r*http.Request){fmt.Fprintf(w,"Homepage")}funcschedule(ffunc(),intervaltime.Duration)*time.Ticker{ticker:=time.NewTicker(interva

google-app-engine - Go中的字母数字排序

我正在从GAE数据存储中读取行,我想按字母数字顺序对它们进行排序。假设我有这样的东西:keynamedescriptionsequence===========================================ASD..maths1itismathschap21.1ASD..maths2itismathschap21.10ASD..maths3itismathschap21.2我希望结果在序列字段上按字母数字排序,如下所示:keynamedescriptionsequence===========================================ASD..m

google-app-engine - 实体在放入 Google App Engine Datastore 后不能立即使用

我的申请流程如下:-用户进入新实体页面。用户点击保存按钮,系统将新实体放入数据存储区。系统立即将用户重定向到“编辑”页面。编辑页面查询刚刚插入的实体。(问题)新插入的实体有时不可用。我认为这是因为Datastore需要进行一些数据复制,因此新插入的数据在Put(..)函数返回后不会立即可用。我应该如何处理这个问题或者我需要使用交易? 最佳答案 您应该阅读有关最终一致性的内容:https://cloud.google.com/appengine/docs/go/datastore/structuring_for_strong_cons

web - Go 中的交互式网页

你知道是否可以在Go中创建交互式网页吗?例如,有一个或多个按钮,或者有一个组合框来刷新页面并根据选择过滤数据?我试图寻找它,但没有找到任何相关内容。提前致谢。 最佳答案 浏览器无法直接运行Go代码。客户端的交互式网页使用不同的技术,例如HTML、Javascript和CSS。但是,在客户端使用上述语言,在服务器端用Go做所有事情,这是一个可行的技术栈。也就是说,仍然有一些框架允许您用Go编写所有内容,它们将您的Go代码转换为客户端理解/支持的语言,或者它们为客户端生成与服务器交互的代码-端Go代码。对于后者,有Gowut(GoWeb

postgresql - 无法获取 Go http 返回错误; 'No data recieved'

我正在尝试使用Go构建一个基本API,它使用PostgreSQLlibrary返回SQL查询的结果。.目前我可以让程序返回值,但我无法让它向用户返回失败的消息,即一些带有错误消息的JSON。我有一个错误函数如下:funchandleError(whttp.ResponseWriter,errerror){iferr!=nil{log.Print(err.Error()+"\r\n")//Logginghttp.Error(w,err.Error(),http.StatusInternalServerError)return}}但是http.Error方法似乎没有返回任何东西。抛出的错误

google-app-engine - 应用引擎 : Multiple configurations/environments

我有一个GoogleAppEngine应用程序(Golang,如果重要的话)我想多次部署,但设置略有不同。思考生产与QA。app.yaml中的env_variables似乎很有希望,但似乎我只能拥有一个这样的文件。例如,我看不到使用app-qa.yaml调用“goappdeploy”的方法。如何调整部署配置?如果没有将文件复制到目录并操作app.yaml的自定义脚本,是否可以拥有多个app.yaml?还有其他配置方法吗? 最佳答案 我的偏好是在VCS(在我的例子中是git)中反射(reflect)(并通过其控制)暂存/QA和生产之间

linux - 无法在 Linux 上的 goroutine 中运行 go web serve (Mint)

我正在尝试在我的go应用程序中启动一个网络服务器。当我在Windows上运行我的代码时,一切都按预期工作。应用程序运行它启动web服务器,然后等待。在Linux上,它似乎做同样的事情,只是我无法访问Web服务器。如果我在不使用goroutine的情况下启动Web服务器,服务器会正​​常工作,只有当我使用goroutine时它​​才会失败。packagemainimport("fmt""log""net/http")funcmain(){//gostartWebServer()//ThisonlyworksonWindows.//startWebServer()//Thisworkson