我最近升級到最新版本的Go SDK(1.8.0),現在當我調用os.Getenv(「SERVER_SOFTWARE」)時,我得到一個空白字符串。我正在使用它來確定我是否位於本地開發服務器或實時環境中,而且我不知道有任何其他檢查方式。所以任何一個問題的答案都會使我很好:1)爲什麼現在返回一個空字符串?或2)是否有其他方法來檢查我是否在開發服務器上?爲什麼os.Getenv(「SERVER_SOFTWARE」)爲我返回空白字符串?
回答
所以...我一直在發現很多「嘿,我很笨,還有更好的方法」最近回答了我的問題。這似乎是其中之一。所以,如果我支持一個步驟,並解決我試圖回答的真正問題,那麼一切都變得簡單多了。我只是試圖確定我是否在開發服務器或活動服務器上。我正在研究一個完全不相關的問題,並發現:appengine.IsDevAppServer()。這是完整的文件:https://developers.google.com/appengine/docs/go/reference#IsDevAppServer,我從來沒有看到它,直到現在。
使用os.Environ
函數可查看爲開發服務器設置了哪些環境變量。看看它們中的任何一個是否可以區分開發和生產服務器。例如,APPLICATION_ID
環境變量。
Accessing Application IDs in the Development Web Server
開發服務器模擬生產App Engine服務。 這樣做的一種方法是將一個字符串(
dev~
)預先加入到APPLICATION_ID
環境變量中。
謝謝,peterSO,我感覺我越來越接近了,我可以用我用os.Environ()函數發現的方法來做到這一點......但沒有任何常見的嫌疑人出現,而我對使用它們中的任何一個都不是很滿意。當我輸出所有內容時,我會得到:「GOROOT = C:\ Program Files \ Google \ google_appengine \ goroot」;「SYSTEMROOT = C:\ windows」;「PWD = C:\ PATH_TO_MY_APP」;「TZ =世界標準時間」; –
我想可以使用PWD變量,但對我來說這只是一種創可貼的解決方案,如果將來有任何其他開發人員在這方面開展工作,那麼這種方法就行不通。就像我說的那樣,沒有任何通常的嫌疑犯存在,比如APPLICATION_ID或者SERVER_SOFTWARE。有什麼方法可以添加它們嗎?當我啓動開發服務器時,我錯過了一些標準的命令行選項(我現在使用的全部是:dev_appserver.py「C:\ PATH_TO_MY_APP」)? –
- 1. 爲什麼[] + []返回空字符串?
- 2. 爲什麼subprocess.popen返回空字符串
- 3. 爲什麼regex.Match返回空字符串?
- 4. 爲什麼db_placeholder爲我的查詢返回空字符串?
- 5. 爲什麼提示返回有時爲空作爲字符串
- 6. 爲什麼我的函數在python中返回空字符串?
- 7. 爲什麼我的EditText返回null或空字符串?
- 8. 爲什麼我的XmlReader會返回一個空字符串?
- 9. gridview findcontrol什麼都不返回空字符串(空白)
- 10. 爲什麼DropDownList.Text在顯式爲空字符串時返回0?
- 11. 爲什麼JavaScript爲「邏輯與」操作返回空字符串?
- 12. 這是爲什麼返回空白?
- 13. 爲什麼HttpContext.Current.User.Identity.Name返回空白
- 14. 爲什麼SimpleXML_load_file返回空白輸出?
- 15. 爲什麼空語句ToString()返回一個空字符串?
- 16. 爲什麼`+ [[]] + [[]]`返回一個字符串?
- 17. 爲什麼我的字符串返回一個字符?
- 18. 爲什麼我在這裏得到空白字符串?
- 19. 爲什麼JavaScript字符串空白字符 不匹配?
- 20. 爲字段返回空字符串SQL
- 21. 什麼都要返回string.Split(「;」)如果字符串爲null或空
- 22. 爲什麼glGetProgramInfoLog返回一個空字符串?
- 23. 爲什麼HttpWebResponse返回空終止的字符串?
- 24. 爲什麼HttpContext.Current.Request.Url.AbsolutePath返回一個空字符串?
- 25. 爲什麼net()。成功返回空字符串
- 26. Rome getAuthor()總是返回空字符串。爲什麼?
- 27. 爲什麼「request.getUserPrincipal()。getName()」有時會返回空字符串?
- 28. 爲什麼GetText方法返回空字符串
- 29. 爲什麼這個方法返回一個空字符串?
- 30. 爲什麼替換空字符串沒有任何返回
本地開發服務器和實時環境是否都返回空白字符串? –
是的,這裏是我在現場的所有環境變量:「TZ = UTC」;「PWD =/base/data/home/apps/s〜[MY_APP_ID]/[MY_APP_VERSION]」;查看我對peterSO對我的開發站點變量的回答的評論。 –