为了账号安全,请及时绑定邮箱和手机立即绑定

如何根据项目ID设置变量?

如何根据项目ID设置变量?

Go
胡子哥哥 2021-12-27 15:46:44
我目前有一个包含 2 个项目的 App Engine Go 应用程序:myapp-prod和myapp-staging.我希望能够根据应用程序是在 prod 还是 staging 中运行来设置某些变量的值。有没有办法让应用程序检测它在哪个环境中运行?
查看完整描述

2 回答

?
慕容708150

TA贡献1831条经验 获得超4个赞

您可以使用该appengine.AppID()函数来获取应用程序的名称/ID:


// AppID returns the application ID for the current application.

// The string will be a plain application ID (e.g. "appid"), with a

// domain prefix for custom domain deployments (e.g. "example.com:appid"). 

func AppID(c Context) string

您可以使用appengine.IsDevAppServer()来判断您的应用程序是在开发模式下运行(使用 AppEngine SDK)还是实时运行(生产中):


// IsDevAppServer reports whether the App Engine app is running in the

// development App Server. 

func IsDevAppServer() bool

或者,您也可以使用appengine.ServerSoftware()which 包含上述两个信息,合并为一个字符串:


// ServerSoftware returns the App Engine release version.

// In production, it looks like "Google App Engine/X.Y.Z".

// In the development appserver, it looks like "Development/X.Y". 

func ServerSoftware() string


查看完整回答
反对 回复 2021-12-27
?
元芳怎么了

TA贡献1798条经验 获得超7个赞

使用环境变量来描述您的应用程序是在生产中还是在登台。添加到app.yml,


env_variables:

  ENVIRONMENT: 'production'

在您的代码中,


import "os"


if v := os.Getenv("ENVIRONMENT"); v == "production" {

  // You're in production

}


查看完整回答
反对 回复 2021-12-27
  • 2 回答
  • 0 关注
  • 220 浏览
慕课专栏
更多

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信