Démarrage asynchrone du navigateur après l'initialisation du serveur dans Go
Dans Go, il existe plusieurs approches pour démarrer un navigateur après qu'un serveur a commencé à écouter . L'une des méthodes les plus simples consiste à diviser les opérations d'écoute et de service.
import ( "fmt" "log" "net" "net/http" "github.com/julienschmidt/httprouter" ) func main() { r := httprouter.New() r.GET("/test", func(w http.ResponseWriter, r *http.Request, _ httprouter.Params) { fmt.Fprint(w, "Welcome!\n") }) // Open the listening socket l, err := net.Listen("tcp", "localhost:3000") if err != nil { log.Fatal(err) } // Start the browser after the listening socket is open err = open.Start("http://localhost:3000/test") if err != nil { log.Println(err) } // Begin the blocking server loop log.Fatal(http.Serve(l, r)) }
Cette approche garantit que le navigateur peut se connecter une fois le socket d'écoute établi, avant le début de la boucle de blocage du serveur.
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!