Junior — Middle
Poți explica ce este un router în limbajul Go și cum este utilizat?
sobes.tech AI
Răspuns de la AI
În limbajul Go, termenul "router" se referă de obicei la un component al serverului web care asociază cererile HTTP primite cu handlerii corespunzători, pe baza căilor URL și a metodelor.
Routerul permite definirea codului care trebuie executat la accesarea unei rute specifice, de exemplu /users sau /products/{id}.
Exemplu de utilizare a routerului cu pachetul popular gorilla/mux:
package main
import (
"fmt"
"net/http"
"github.com/gorilla/mux"
)
func main() {
r := mux.NewRouter()
r.HandleFunc("/hello", func(w http.ResponseWriter, r *http.Request) {
fmt.Fprintln(w, "Hello, world!")
}).Methods("GET")
http.ListenAndServe(":8080", r)
}
Aici, routerul r direcționează cererile GET către /hello către funcția handler corespunzătoare.
În contextul Flutter, dacă întrebarea se referă la rutare în cadrul unei aplicații, atunci "router" este un mecanism de navigare între ecrane (routes), dar în Go, este exact un component al serverului pentru procesarea cererilor HTTP.