
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という関数もあり、これは必要な引数が違う