Rumah  >  Artikel  >  pembangunan bahagian belakang  >  Bagaimana untuk memulakan penyemak imbas selepas pelayan mula mendengar?

Bagaimana untuk memulakan penyemak imbas selepas pelayan mula mendengar?

王林
王林ke hadapan
2024-02-08 22:03:32825semak imbas

Bagaimana untuk memulakan penyemak imbas selepas pelayan mula mendengar?

editor php Strawberry akan memperkenalkan kepada anda cara memulakan pelayar selepas pelayan mula mendengar. Selepas kami memulakan pelayan dan mendengar port yang ditentukan, kami boleh menulis kod untuk memulakan penyemak imbas secara automatik. Terdapat dua kaedah pelaksanaan khusus, satu ialah membuka penyemak imbas lalai dengan memanggil arahan sistem, dan satu lagi ialah menggunakan protokol penyahpepijatan jauh penyemak imbas. Tidak kira kaedah yang digunakan, konfigurasi dan panggilan yang sepadan perlu dibuat dalam kod untuk merealisasikan fungsi membuka pelayar secara automatik.

Kandungan soalan

In go, bagaimana untuk memulakan penyemak imbas selepas pelayan mula mendengar?

Terbaik ialah cara yang paling mudah.

Kod saya setakat ini sangat mudah:

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")
}

Penyelesaian

Buka pendengar, mulakan penyemak imbas, kemudian masukkan gelung pelayan:

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))

Tidak perlu membuat tinjauan pendapat, seperti yang ditunjukkan dalam jawapan lain. Jika soket mendengar dibuka sebelum penyemak imbas bermula, penyemak imbas akan bersambung.

listenandserve ialah fungsi kemudahan yang membuka soket dan membuat panggilan. Kod dalam jawapan ini membahagikan langkah-langkah ini supaya penyemak imbas boleh dibuka selepas mendengar dimulakan tetapi sebelum berkhidmat disekat daripada dipanggil.

Atas ialah kandungan terperinci Bagaimana untuk memulakan penyemak imbas selepas pelayan mula mendengar?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan:
Artikel ini dikembalikan pada:stackoverflow.com. Jika ada pelanggaran, sila hubungi admin@php.cn Padam