我正在尝试编写一些代码来从JSON文件中获取配置。 当我尝试构建时,我收到此错误
type ConfigVars is not an expression
以下是我尝试使用的配置和程序代码。我到目前为止找到的每个例子都与下面的代码类似。对我做错了什么的任何建议?
-- Config File
{"beaconUrl":"http://test.com/?id=1"}
-- Program Code
package main
import (
"encoding/json"
"fmt"
"os"
)
type ConfigVars struct {
BeaconUrl string
}
func main() {
configFile, err := os.Open("config.json")
defer configFile.Close()
if err != nil {
fmt.Println("Opening config file", err.Error())
}
jsonParser := json.NewDecoder(configFile)
if err = jsonParser.Decode(&ConfigVars); err != nil {
fmt.Println("Parsing config file", err.Error())
}
}
答案 0 :(得分:6)
你正在做的是尝试将指针传递给ConfigVars
类型(显然这并不意味着什么)。你想要做的是创建一个类型为ConfigVars
的变量,并将指针传递给它:
var cfg ConfigVars
err = jsonParser.Decode(&cfg)
...