これは、GOPATHを使用せずにGoでコーディングするのが初めてです。ファイル
がありgo.mod
ます。
Sendgridを介してメールを送信しようとしています。というSENDGRID_API_KEYを含むファイルがありますsendgrid.env
。ファイル
内でキーを使用しようとするmain.go
と、値が引き出されません。
fmt.Println(os.LookupEnv("SENDGRID_API_KEY")) // empty string
fmt.Println(os.Getenv("SENDGRID_API_KEY")) // empty string
falseを返す「LookupEnv」も使用しました。
任意の助けいただければ幸いです。
os.Getenv()
そしてos.LookupEnv()
ファイルをチェックしません。環境変数がファイルにある場合は、自分でロードする必要があります。または、それを行うサードパーティのlibを使用します。たとえばgithub.com/joho/godotenv
、次のようになります。
if err := godotenv.Load("sendgrid.env"); err != nil {
log.Fatal("Error loading sendgrid.env file")
}
別のオプションは、アプリを起動する前に環境変数をエクスポートすることです。例:
export SENDGRID_API_KEY=mykey
./mygoapp
または1行で:
SENDGRID_API_KEY=mykey ./mygoapp
または、ファイルにenv varsがある場合は、source
次のコマンドを使用できます。
source sendgrid.env
./mygoapp
この記事はインターネットから収集されたものであり、転載の際にはソースを示してください。
侵害の場合は、連絡してください[email protected]
コメントを追加