Home >Backend Development >Golang >How to start the browser after the server starts listening?
php editor Strawberry will introduce to you how to start the browser after the server starts listening. After we start the server and listen to the specified port, we can write code to automatically start the browser. There are two specific implementation methods, one is to open the default browser by calling system commands, and the other is to use the browser's remote debugging protocol. No matter which method is used, corresponding configuration and calls need to be made in the code to realize the function of automatically opening the browser.
In go, how to start the browser after the server starts listening?
The best is the simplest way.
My code so far is very simple:
package main import ( // Standard library packages "fmt" "net/http" "github.com/skratchdot/open-golang/open" // Third party packages "github.com/julienschmidt/httprouter" ) // go get github.com/toqueteos/webbrowser func main() { // Instantiate a new router r := httprouter.New() // Add a handler on /test r.GET("/test", func(w http.ResponseWriter, r *http.Request, _ httprouter.Params) { // Simply write some test data for now fmt.Fprint(w, "Welcome!\n") }) //open.Run("https://google.com/") // open.Start("https://google.com") // http://127.0.0.1:3000/test // Fire up the server http.ListenAndServe("localhost:3000", r) fmt.Println("ListenAndServe is blocking") open.RunWith("http://localhost:3000/test", "firefox") fmt.Println("Done") }
Open the listener, start the browser, and then enter the server loop:
l, err := net.Listen("tcp", "localhost:3000") if err != nil { log.Fatal(err) } // The browser can connect now because the listening socket is open. err := open.Start("http://localhost:3000/test") if err != nil { log.Println(err) } // Start the blocking server loop. log.Fatal(http.Serve(l, r))
There is no need to poll, as shown in another answer. If the listening socket is open before the browser starts, the browser will connect.
listenandserve is a convenience function that opens a socket and calls serve. The code in this answer splits these steps so that the browser can be opened after listening has started but before serving is blocked from being called.
The above is the detailed content of How to start the browser after the server starts listening?. For more information, please follow other related articles on the PHP Chinese website!