server.go 687 B

12345678910111213141516171819202122232425262728293031
  1. package server
  2. import (
  3. "fmt"
  4. "log"
  5. "net/http"
  6. "github.com/felamaslen/go-music-player/pkg/config"
  7. "github.com/felamaslen/go-music-player/pkg/logger"
  8. "github.com/go-redis/redis/v7"
  9. "github.com/gorilla/mux"
  10. )
  11. func StartServer() {
  12. conf := config.GetConfig()
  13. l := logger.CreateLogger(conf.LogLevel)
  14. rdb := redis.NewClient(&redis.Options{ Addr: conf.RedisUrl })
  15. defer rdb.Close()
  16. router := mux.NewRouter()
  17. initPubsub(l, rdb, router)
  18. router.Path("/stream").Methods("GET").HandlerFunc(routeHandler(l, rdb, streamSong))
  19. port := conf.Port
  20. l.Info("Starting server on port %d\n", port)
  21. log.Fatal(http.ListenAndServe(fmt.Sprintf("localhost:%d", port), router))
  22. }