Kako izgraditi osnovni web poslužitelj koristeći Go

Kako izgraditi osnovni web poslužitelj koristeći Go

Go je zanimljiv programski jezik za izradu modernih web aplikacija kao i sistemskog softvera. Izazvao je veliki interes nakon objavljivanja i pokreće usluge kao što su Docker, Kubernetes, Terraform, Dropbox i Netflix .

Nadalje, Go-ova robusna zbirka ugrađenih paketa čini ga odličnim izborom za web programiranje. Ovaj članak će vam pokazati kako napisati osnovni web poslužitelj u Gou.

Uvezite potrebne pakete

Paket net/HTTP pruža sve što je potrebno za izradu web poslužitelja i klijenta. Ovaj paket predstavlja neke korisne funkcije za rukovanje web programiranjem.

Možete ga uvesti dodavanjem donjeg retka na početak izvornog koda:

import "net/http"

Članak će također koristiti fmt paket za formatiranje nizova i log paket za obradu pogrešaka. Možete ih uvesti pojedinačno kao što je gore prikazano ili uvesti sve pakete pomoću jedne naredbe za uvoz:

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

Možete nastaviti s pisanjem glavne funkcije nakon uvoza potrebnih paketa. Samo naprijed i spremite izvornu datoteku s nastavkom .go . Ako koristite Vim , koristite donju naredbu za spremanje i izlazak iz Vima:

:wq server.go

Napiši glavnu funkciju

Go programi nalaze se izravno unutar glavne funkcije, prikladno nazvane "main". Ovdje ćete morati uputiti poziv poslužitelju . Dodajte sljedeće retke izvornom kodu i pogledajte što rade:

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

Primjer je definiranje glavne funkcije pomoću ključne riječi func . Go ima stroga pravila o postavljanju otvora za otvaranje, pa provjerite je li početni nosač na ispravnoj liniji. Prva izjava u glavnom definira da će svim web zahtjevima prema korijenskoj stazi ( "/" ) upravljati indeks, funkcija tipa http.HandlerFunc .

Drugi redak pokreće web poslužitelj putem funkcije http.ListenAndServe . Signalizira poslužitelju da neprekidno osluškuje dolazne HTTP zahtjeve na portu 8080 poslužitelja. Drugi parametar ove funkcije potreban je za blokiranje programa do kraja.

Budući da http.ListenAndServe uvijek vraća pogrešku, primjer omata ovaj poziv unutar dnevnika. Fatalni poziv . Ova izjava bilježi sve poruke o grešci generirane na strani poslužitelja.

Implementirati funkcije obrade

Kao što vidite, glavna funkcija poziva indeks funkcije rukovatelja za obradu zahtjeva klijenta. Međutim, primjer još nije definirao ovu funkcionalnost za svoj poslužitelj.

Dodajmo potrebne izjave kako bi funkcija indeksa bila upotrebljiva:

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

Ova funkcija uzima dva različita argumenta tipa http.ResponseWriter i http.Request . Parametar http.ResponseWriter sadrži odgovor poslužitelja na dolazni zahtjev, u obliku http.Request objekta .

Funkcija Fprintf iz paketa fmt koristi se za prikaz i manipuliranje tekstualnim nizovima. Članak koristi ovo za prikaz odgovora poslužitelja na web zahtjeve. Konačno, element r.URL.Path[1:] koristi se za dohvaćanje podataka nakon korijenske staze.

Dodajte sve preostale dijelove

Vaš Go web poslužitelj bit će spreman nakon što dodate sve preostale komponente. Kod će izgledati ovako:

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

Prvi redak potreban je za kompajliranje ovog koda Go web poslužitelja kao izvršne datoteke.

Kako izgraditi osnovni web poslužitelj koristeći Go

Kompajlirajte ovaj kôd Go web poslužitelja kao izvršnu datoteku


Saznajte više o vatrozidima, Vatrozid za Windows na Windows Serveru 2012

Saznajte više o vatrozidima, Vatrozid za Windows na Windows Serveru 2012

Vatrozid za Windows s naprednom sigurnošću je vatrozid koji radi na Windows Serveru 2012 i omogućen je prema zadanim postavkama. Postavkama vatrozida u sustavu Windows Server 2012 upravlja se u Windows Firewall Microsoft Management Console.

Kako promijeniti lozinku za prijavu na modem i ruter Vigor Draytek

Kako promijeniti lozinku za prijavu na modem i ruter Vigor Draytek

Prilikom promjene lozinke administratorske stranice za prijavu modema i usmjerivača Vigor Draytek, korisnici će ograničiti neovlašteni pristup za promjenu lozinke modema, osiguravajući važne informacije o mreži.

Kako jednostavno overclockati RAM uz AMD Ryzen Master

Kako jednostavno overclockati RAM uz AMD Ryzen Master

Srećom, korisnici Windows računala s AMD Ryzen procesorima mogu koristiti Ryzen Master za jednostavno overclockiranje RAM-a bez diranja BIOS-a.

7 načina za ispravljanje grešaka na Windows laptopu koji se ne puni preko USB-C

7 načina za ispravljanje grešaka na Windows laptopu koji se ne puni preko USB-C

USB-C priključak postao je standard za prijenos podataka, video izlaz i punjenje na modernim Windows prijenosnim računalima. Iako je to zgodno, može biti frustrirajuće kada prijenosno računalo priključite na USB-C punjač, ​​a ono se ne puni.

Kako popraviti pogrešku Cannot Create Service na Ultravieweru

Kako popraviti pogrešku Cannot Create Service na Ultravieweru

Pogreška Cannot Create Service na Ultravieweru javlja se kada instaliramo softver s kodom pogreške 1072.

Kako popraviti pogrešku neprikazivanja ID-a na Ultravieweru

Kako popraviti pogrešku neprikazivanja ID-a na Ultravieweru

Pogreška neprikazivanja ID-a na Ultravieweru utjecat će na vezu s udaljenim računalom.

Kako koristiti Ultraviewer za slanje i primanje datoteka

Kako koristiti Ultraviewer za slanje i primanje datoteka

Ultraviewer daljinski upravlja računalom i ima način rada za slanje i primanje datoteka.

6 načina za trajno brisanje datoteka u sustavu Windows

6 načina za trajno brisanje datoteka u sustavu Windows

Obično, kada brišete datoteku u sustavu Windows, datoteka se neće odmah izbrisati, već će se spremiti u koš za smeće. Nakon toga morat ćete napraviti još jedan korak: isprazniti smeće. Ali ako ne želite morati napraviti ovaj drugi korak, pokazat ćemo vam kako trajno izbrisati datoteku u članku u nastavku.

Kako dark web utječe na sigurnost?

Kako dark web utječe na sigurnost?

Dark web je misteriozno mjesto sa sjajnom reputacijom. Pronalaženje mračnog weba nije teško. Međutim, naučiti kako se njime sigurno kretati druga je stvar, pogotovo ako ne znate što radite ili što možete očekivati.

Što je virus Adrozek? Kako se zaštititi od Adrozek virusa

Što je virus Adrozek? Kako se zaštititi od Adrozek virusa

Tehnički, Adrozek nije virus. To je otmičar preglednika, poznat i kao modifikator preglednika. To znači da je zlonamjerni softver instaliran na vaše računalo bez vašeg znanja.