mirror of
				https://github.com/mxpv/podsync.git
				synced 2024-05-11 05:55:04 +00:00 
			
		
		
		
	Implement HTTP server
This commit is contained in:
		
							
								
								
									
										34
									
								
								web/main.go
									
									
									
									
									
								
							
							
						
						
									
										34
									
								
								web/main.go
									
									
									
									
									
								
							@@ -1,4 +1,38 @@
 | 
			
		||||
package main
 | 
			
		||||
 | 
			
		||||
import (
 | 
			
		||||
	"context"
 | 
			
		||||
	"fmt"
 | 
			
		||||
	"log"
 | 
			
		||||
	"net/http"
 | 
			
		||||
	"os"
 | 
			
		||||
	"os/signal"
 | 
			
		||||
	"syscall"
 | 
			
		||||
)
 | 
			
		||||
 | 
			
		||||
func main() {
 | 
			
		||||
	stop := make(chan os.Signal)
 | 
			
		||||
	signal.Notify(stop, syscall.SIGINT, syscall.SIGTERM)
 | 
			
		||||
 | 
			
		||||
	ctx, cancel := context.WithCancel(context.Background())
 | 
			
		||||
	defer cancel()
 | 
			
		||||
 | 
			
		||||
	srv := http.Server{
 | 
			
		||||
		Addr: fmt.Sprintf(":%d", 8080),
 | 
			
		||||
	}
 | 
			
		||||
 | 
			
		||||
	go func() {
 | 
			
		||||
		log.Println("running listener")
 | 
			
		||||
		if err := srv.ListenAndServe(); err != nil {
 | 
			
		||||
			log.Fatal(err)
 | 
			
		||||
		}
 | 
			
		||||
	}()
 | 
			
		||||
 | 
			
		||||
	<-stop
 | 
			
		||||
 | 
			
		||||
	log.Printf("shutting down server")
 | 
			
		||||
 | 
			
		||||
	srv.Shutdown(ctx)
 | 
			
		||||
 | 
			
		||||
	log.Printf("server gracefully stopped")
 | 
			
		||||
}
 | 
			
		||||
 
 | 
			
		||||
		Reference in New Issue
	
	Block a user