setting.go 1.3 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364
  1. package back
  2. import (
  3. "encoding/json"
  4. "fmt"
  5. "os"
  6. )
  7. type setting struct {
  8. ServerVersion string
  9. ServerDomain string
  10. ServerHost string
  11. ServerPort string
  12. ServerSSL bool
  13. ServerSSLCert string
  14. ServerSSLKey string
  15. PgHost string
  16. PgPort string
  17. PgUser string
  18. PgPass string
  19. PgBase string
  20. Data string
  21. Docs string
  22. Assets string
  23. HTML string
  24. Log string
  25. }
  26. // Setting параметры сервера
  27. var Setting setting
  28. func initSetting() {
  29. // Открыть файл
  30. file, e := os.Open("setting.json")
  31. if e != nil {
  32. fmt.Println(e.Error())
  33. panic("Не удалось открыть файл конфигурации")
  34. }
  35. defer file.Close()
  36. stat, e := file.Stat()
  37. if e != nil {
  38. fmt.Println(e.Error())
  39. panic("Не удалось прочитать информацию о файле конфигурации")
  40. }
  41. readByte := make([]byte, stat.Size())
  42. _, e = file.Read(readByte)
  43. if e != nil {
  44. fmt.Println(e.Error())
  45. panic("Не удалось прочитать файл конфигурации")
  46. }
  47. e = json.Unmarshal(readByte, &Setting)
  48. if e != nil {
  49. fmt.Println(e.Error())
  50. panic("Не удалось считать данных файла конфигурации")
  51. }
  52. }