Come creare un server Web di base utilizzando Go

Come creare un server Web di base utilizzando Go

Go è un interessante linguaggio di programmazione per la creazione di moderne applicazioni web e software di sistema. Ha creato un enorme entusiasmo dopo il suo rilascio e alimenta servizi come Docker, Kubernetes, Terraform, Dropbox e Netflix .

Inoltre, la solida raccolta di pacchetti integrati di Go lo rende un'ottima scelta per la programmazione web. Questo articolo ti mostrerà come scrivere un server web di base in Go.

Importa i pacchetti necessari

Il pacchetto net/HTTP fornisce tutto il necessario per creare un server web e un client. Questo pacchetto presenta alcune funzioni utili per gestire la programmazione web.

Puoi importarlo aggiungendo la riga seguente all'inizio del codice sorgente:

import "net/http"

L'articolo utilizzerà anche il pacchetto fmt per formattare le stringhe e il pacchetto log per gestire gli errori. Puoi importarli singolarmente come mostrato sopra oppure importare tutti i pacchetti utilizzando un'unica istruzione di importazione:

import (
"fmt"
"log"
"net/http"
)

Puoi procedere con la scrittura della funzione main dopo aver importato i pacchetti necessari. Vai avanti e salva il file sorgente con l' estensione .go . Se stai usando Vim , usa il comando seguente per salvare e uscire da Vim:

:wq server.go

Scrivi la funzione principale

I programmi Go risiedono direttamente all'interno della funzione main, giustamente chiamata "main". Dovrai effettuare una chiamata al server qui. Aggiungi le seguenti righe al codice sorgente e guarda cosa fanno:

func main() {
http.HandleFunc("/", index)
log.Fatal(http.ListenAndServe(":8080", nil))
}

L'esempio definisce la funzione main utilizzando la parola chiave func . Go ha regole rigide sulla posizione della parentesi graffa di apertura, quindi assicurati che la graffa iniziale sia sulla linea corretta. La prima istruzione in main definisce che tutte le richieste web al percorso root ( "/" ) saranno gestite da index, una funzione di tipo http.HandlerFunc .

La seconda riga avvia il server web tramite la funzione http.ListenAndServe . Segnala al server di ascoltare continuamente le richieste HTTP in entrata sulla porta 8080 del server. Il secondo parametro di questa funzione serve per bloccare il programma fino alla fine.

Poiché http.ListenAndServe restituisce sempre un errore, l'esempio racchiude questa chiamata all'interno di una chiamata log.Fatal . Questa istruzione registra eventuali messaggi di errore generati sul lato server.

Implementare funzioni di elaborazione

Come puoi vedere, la funzione main chiama l'indice della funzione del gestore per gestire le richieste del client. Tuttavia, l'esempio non ha ancora definito questa funzionalità per il proprio server.

Aggiungiamo le istruzioni necessarie per rendere utilizzabile la funzione indice:

func index(w http.ResponseWriter, r *http.Request) {
fmt.Fprintf(w, "Hi there, welcome to %s!", r.URL.Path[1:])
}

Questa funzione accetta due argomenti diversi di tipo http.ResponseWriter e http.Request . Il parametro http.ResponseWriter contiene la risposta del server alla richiesta in arrivo, sotto forma di oggetto http.Request .

La funzione Fprintf del pacchetto fmt viene utilizzata per visualizzare e manipolare stringhe di testo. L'articolo lo utilizza per visualizzare la risposta del server alle richieste web. Infine, l'elemento r.URL.Path[1:] viene utilizzato per recuperare i dati dopo il percorso root.

Aggiungi tutte le parti rimanenti

Il tuo server web Go sarà pronto una volta aggiunti tutti i componenti rimanenti. Il codice sarà simile al seguente:

import (
"fmt"
"log"
"net/http"
)
func index(w http.ResponseWriter, r *http.Request) {
fmt.Fprintf(w, "Hi there, welcome to %s!", r.URL.Path[1:])
}
func main() {
http.HandleFunc("/", index)
log.Fatal(http.ListenAndServe(":8080", nil))
}

La prima riga è necessaria per compilare il codice del server web Go come file eseguibile.

Come creare un server Web di base utilizzando Go

Compila questo codice del server web Go come file eseguibile


Come rimuovere lavviso di richiesta di copyright nellangolo destro dello schermo su Windows 10

Come rimuovere lavviso di richiesta di copyright nellangolo destro dello schermo su Windows 10

Vedi una notifica di attivazione di Windows 10 nell'angolo destro dello schermo? Questo articolo ti guiderà come eliminare l'avviso di richiesta di copyright su Windows 10.

Istruzioni dalla A alla Z su come installare Windows 10 build 14393.222

Istruzioni dalla A alla Z su come installare Windows 10 build 14393.222

Recentemente Microsoft ha rilasciato l'ultimo aggiornamento cumulativo per gli utenti di PC Windows 10 chiamato Build 14393.222. Questo aggiornamento rilasciato per Windows 10 corregge principalmente i bug in base al feedback degli utenti e migliora l'esperienza delle prestazioni del sistema operativo.

Proteggi la tua rete di computer con Bastion host in soli 3 passaggi

Proteggi la tua rete di computer con Bastion host in soli 3 passaggi

Hai computer sulla tua rete locale che necessitano di accesso esterno? Utilizzare un bastion host come gatekeeper per la tua rete può essere una buona soluzione.

Come creare un tasto Windows se la tastiera non è disponibile

Come creare un tasto Windows se la tastiera non è disponibile

Se preferisci utilizzare una vecchia tastiera classica, come l'IBM Model M, che non include un tasto Windows fisico, esiste un metodo semplice per aggiungerne altro, prendendo in prestito un tasto che non usi spesso. .

3 modi per cancellare rapidamente tutti i registri eventi in Windows 10

3 modi per cancellare rapidamente tutti i registri eventi in Windows 10

A volte potrebbe essere necessario eliminare i vecchi registri eventi tutti in una volta. In questa guida, Quantrimang.com ti mostrerà 3 modi per eliminare rapidamente tutti i registri eventi nel Visualizzatore eventi di Windows 10.

I metodi IP falsi ti aiutano ad accedere in modo anonimo

I metodi IP falsi ti aiutano ad accedere in modo anonimo

In molti articoli precedenti abbiamo menzionato che rimanere anonimi online è estremamente importante. Ogni anno vengono divulgate informazioni private, rendendo la sicurezza online sempre più necessaria. Questo è anche il motivo per cui dovremmo utilizzare indirizzi IP virtuali. Di seguito impareremo i metodi per creare IP falsi!

Come creare la modalità sfondo trasparente su Windows 10

Come creare la modalità sfondo trasparente su Windows 10

WindowTop è uno strumento che ha la capacità di oscurare tutte le finestre delle applicazioni e i programmi in esecuzione su computer Windows 10. Oppure puoi utilizzare un'interfaccia con sfondo scuro su Windows.

Come disattivare la barra della lingua sulla barra delle applicazioni di Windows 8

Come disattivare la barra della lingua sulla barra delle applicazioni di Windows 8

La barra della lingua su Windows 8 è una barra degli strumenti della lingua in miniatura progettata per essere visualizzata automaticamente sullo schermo del desktop. Tuttavia, molte persone desiderano nascondere questa barra della lingua sulla barra delle applicazioni.

Come impostare WEP, WPA, WPA2 per il router Linksys

Come impostare WEP, WPA, WPA2 per il router Linksys

La connettività wireless è oggi una necessità e per questo motivo la sicurezza wireless è essenziale per garantire la sicurezza della rete interna.

Suggerimenti per ottimizzare la velocità della connessione Internet da Linksys

Suggerimenti per ottimizzare la velocità della connessione Internet da Linksys

Massimizzare la velocità di Internet è essenziale per ottimizzare la connessione di rete. Puoi vivere un'esperienza di intrattenimento e di lavoro ottimale utilizzando computer, TV predisposte per Internet, console di gioco, ecc.