GoとNetlifyを使って簡易的なAPIサーバを構築した。 処理の中でGoogleスプレッドシートにアクセスする必要があり、認証情報をNetlifyの環境変数に設定した。しかし、環境変数から改行コードを含む値を取得する時にハマった。一般的な、どの環境でも起こりうるので気をつける。
今回はGo言語で実装していたこともあり、strings.Replaceを使って解決した。
環境
go1.12.5
ソース
package main import ( "fmt" "os" "strings" ) func main() { fmt.Println(os.Getenv("HOGE")) fmt.Println("----------------") fmt.Println(strings.Replace(os.Getenv("HOGE"), "\\n", "\n", -1)) }
出力結果
set HOGE="Hello\nWorld" && go run main.go
"Hello\nWorld" ---------------- "Hello World"
まとめ
- Netlifyの環境変数に認証情報を設定した。
- 改行コードが値に含まれていたためハマってしまいました。
ReplaceAll
という関数もあり、これは必要な引数が違う