Demo 学 Echo Part9 配置文件

配置文件可以用json,YAML格式 app.conf.json
{
"appName": "SimpleApp",
"server": {
"port": 5000
}
}
main.go
package main
import (
"fmt"
"net/http"
"github.com/labstack/echo"
"github.com/spf13/viper"
)
func main() {
e := echo.New()
viper.SetConfigType("json")
viper.AddConfigPath(".")
viper.SetConfigName("app.conf")
err := viper.ReadInConfig()
if err != nil {
e.Logger.Fatal(err)
}
fmt.Println("Starting", viper.GetString("appName"))
e.GET("/index", func(c echo.Context) (err error) {
return c.JSON(http.StatusOK, true)
})
e.Logger.Fatal(e.Start(":" + viper.GetString("server.port")))
}
运行
go run main.go
Starting SimpleApp
____ __
/ __/___/ / ___
/ _// __/ _ \/ _ \
/___/\__/_//_/\___/ v4.1.9
High performance, minimalist Go web framework
https://echo.labstack.com
____________________________________O/_______
O\
⇨ http server started on [::]:5000
用YAML app.config.yaml
appName: SimpleApp2
server:
port: 9000
代码部分修改一下
viper.SetConfigType("yaml")
viper.AddConfigPath(".")
viper.SetConfigName("app.config")
结果
go run main.go
Starting SimpleApp2
____ __
/ __/___/ / ___
/ _// __/ _ \/ _ \
/___/\__/_//_/\___/ v4.1.9
High performance, minimalist Go web framework
https://echo.labstack.com
____________________________________O/_______
O\
⇨ http server started on [::]:9000
最后修改于 2019-08-17