Sobes.tech
Junior — Middle

Можете ли објаснити шта је рутер у језику Go и како се користи?

sobes.tech АИ

Одговор од АИ

U jeziku Go, termin "ruter" obično se odnosi na komponentu web servera koja je odgovorna za mapiranje dolaznih HTTP zahteva na odgovarajuće handler-e na osnovu URL putanja i metoda.

Ruter omogućava definisanje koda koji treba da se izvrši pri pristupu određenoj ruti, na primer /users ili /products/{id}.

Primer korišćenja rutera sa popularnim paketom 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)
}

Ovde, ruter r usmerava GET zahteve na /hello ka odgovarajućoj funkciji-obradiocu.

U kontekstu Flutter-a, ako pitanje odnosi na rutiranje u aplikaciji, "ruter" je mehanizam za navigaciju između ekrana (routes), ali u Go-u je to tačno komponenta servera za obradu HTTP zahteva.