gpt4 book ai didi

google-app-engine - 在 App Engine 上创建 API 后端

转载 作者:IT王子 更新时间:2023-10-29 01:43:04 24 4
gpt4 key购买 nike

我想使用 Go 为 App Engine 上的应用程序创建一个 rest 后端。

我已将我的文件安排为休闲:

-> app/
-> auth/
-> auth.go
-> app.go
-> app.yaml

通常我会在 app.go 中导入 auth 包:import "github.com/user/app/auth",但我得到一个错误,指出文件之间存在冲突(我现在无法粘贴错误)。

在谷歌上寻找解决方案后,我发现如果我删除 github.com... 并且只需 import "auth" 它就会工作,而且确实如此。

上面的解决方案是最佳解决方案吗?

最佳答案

错误是否类似于Failed parsing input: app file auth/auth.go conflicts with same file imported from GOPATH

我对 https://groups.google.com/forum/#!msg/google-appengine-go/dNhqV6PBqVc/ihzI5vgdE1EJ 的阅读是现在更好地安排您的文件,以便您可以使用 github.com/user/... 导入。这是由于 SDK 1.9.1 的新行为破坏了一些项目布局。使用 import "auth" 大部分情况下都能正常工作,但它会破坏 goapp test 并可能导致其他问题。

相反,我们的想法是确保在您的 app.yamlapp.go 级别或之下没有任何其他 go 代码。为此,您可以将 auth 向上移动两个级别,到 app 的父级,并将其导入为 github.com/user/auth。如果您可能在其他应用中使用相同的代码,那将很有意义。

-> app/
-> app.go
-> app.yaml
-> auth/
-> auth.go

或者将auth上移一层,将yaml和app.go移动到一个子目录中。如果这样做,您必须进入该目录才能运行 goapp server,因为那是 app.yaml 所在的位置。

-> app/
-> auth/
-> auth.go
-> app/
-> app.go
-> app.yaml

无论哪种方式,在与 app.yaml 相同的目录中应该只有一个 *.go 文件。

关于google-app-engine - 在 App Engine 上创建 API 后端,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/26400825/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com