中文字幕av专区_日韩电影在线播放_精品国产精品久久一区免费式_av在线免费观看网站

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

如何分析Go中的godotenv

發布時間:2022-01-17 18:01:11 來源:億速云 閱讀:157 作者:柒染 欄目:數據庫

這篇文章跟大家分析一下“如何分析Go中的godotenv”。內容詳細易懂,對“如何分析Go中的godotenv”感興趣的朋友可以跟著小編的思路慢慢深入來閱讀一下,希望閱讀后能夠對大家有所幫助。下面跟著小編一起深入學習“如何分析Go中的godotenv”的知識吧。

Go 中的godotenv
簡介
twelve-factor應用提倡將配置存儲在環境變量中。任何從開發環境切換到生產環境時需要修改的東西都從代碼抽取到環境變量里。 但是在實際開發中,如果同一臺機器運行多個項目,設置環境變量容易沖突,不實用。godotenv庫從.env文件中讀取配置, 然后存儲到程序的環境變量中。在代碼中可以使用讀取非常方便。godotenv源于一個 Ruby 的開源項目dotenv。

快速使用
第三方庫需要先安裝:

$ go get github.com/joho/godotenv


后使用:

package mainimport (  "fmt"  "log"  "os"  "github.com/joho/godotenv")func main() {  err := godotenv.Load()  if err != nil {    log.Fatal(err)  }  fmt.Println("name: ", os.Getenv("name"))  fmt.Println("age: ", os.Getenv("age"))}


然后在可執行程序相同目錄下,添加一個.env文件:

name = dj
age = 18

運行程序,輸出:

name: dj
age: 18

可見,使用非常方便。默認情況下,godotenv讀取項目根目錄下的.env文件,文件中使用key = value的格式,每行一個鍵值對。 調用godotenv.Load()即可加載,可直接調用os.Getenv("key")讀取。os.Getenv是用來讀取環境變量的:

package mainimport (  "fmt"  "os")func main() {  fmt.Println(os.Getenv("GOPATH"))}


高級特性
自動加載
如果你有程序員的優良傳統——懶,你可能連Load方法都不想自己調用。沒關系,godotenv給你懶的權力!

導入github.com/joho/godotenv/autoload,配置會自動讀取:

package mainimport (  "fmt"  "os"  _ "github.com/joho/godotenv/autoload")func main() {  fmt.Println("name: ", os.Getenv("name"))  fmt.Println("age: ", os.Getenv("age"))}


注意,由于代碼中沒有顯式用到godotenv庫,需要使用空導入,即導入時包名前添加一個_。

看autoload包的源碼,其實就是庫幫你調用了Load方法:

// src/github.com/joho/godotenv/autoload/autoload.gopackage autoload

/*You can just read the .env file on import just by doingimport _ "github.com/joho/godotenv/autoload"And bob's your mother's brother*/import "github.com/joho/godotenv"func init() {  godotenv.Load()}

關于如何分析Go中的godotenv就分享到這里啦,希望上述內容能夠讓大家有所提升。如果想要學習更多知識,請大家多多留意小編的更新。謝謝大家關注一下億速云網站!

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

和顺县| 报价| 宝鸡市| 遵义县| 舒兰市| 凌云县| 曲水县| 钟祥市| 北安市| 山东| 勐海县| 南乐县| 铁岭市| 科技| 丽水市| 册亨县| 黄石市| 阿合奇县| 仙桃市| 龙岩市| 得荣县| 永靖县| 上虞市| 连州市| 兰州市| 邹城市| 双江| 通榆县| 金湖县| 越西县| 五指山市| 龙江县| 洪湖市| 康马县| 蕲春县| 靖西县| 江源县| 昌图县| 宝坻区| 安顺市| 南汇区|