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


Instalirajte dinamičke zaslone i animirane pozadine na Windows

Instalirajte dinamičke zaslone i animirane pozadine na Windows

U Microsoftovom operativnom sustavu Windows Vista DreamScene je omogućio postavljanje dinamičke pozadine za računala, ali osam godina kasnije još uvijek nije dostupan na Windows 10. Zašto je ovaj običaj godinama predstavljao vraćanje u prošlost i što možemo učiniti da to promijenimo?

Kako spojiti mrežu između 2 prijenosna računala pomoću mrežnog kabela

Kako spojiti mrežu između 2 prijenosna računala pomoću mrežnog kabela

Ako želimo spojiti dva prijenosna računala na mrežu, možemo koristiti mrežni kabel i zatim promijeniti IP adrese dvaju računala i to je to.

Kako popraviti Nemate dozvolu za spremanje na ovu lokaciju u sustavu Windows

Kako popraviti Nemate dozvolu za spremanje na ovu lokaciju u sustavu Windows

Kada Windows prikaže pogrešku "Nemate dopuštenje za spremanje na ovoj lokaciji", to će vas spriječiti u spremanju datoteka u željene mape.

Najbolji besplatni i plaćeni softver Syslog Server za Windows

Najbolji besplatni i plaćeni softver Syslog Server za Windows

Syslog Server važan je dio arsenala IT administratora, osobito kada je riječ o upravljanju zapisima događaja na centraliziranoj lokaciji.

Što je pogreška 524 Došlo je do isteka vremena i kako popraviti pogrešku

Što je pogreška 524 Došlo je do isteka vremena i kako popraviti pogrešku

Pogreška 524: Došlo je do isteka vremena je kod HTTP statusa specifičan za Cloudflare koji označava da je veza s poslužiteljem zatvorena zbog isteka vremena.

Što je pogreška 0x80070570? Kako popraviti ovu grešku?

Što je pogreška 0x80070570? Kako popraviti ovu grešku?

Šifra pogreške 0x80070570 uobičajena je poruka o pogrešci na računalima, prijenosnim računalima i tabletima s operativnim sustavom Windows 10. Međutim, pojavljuje se i na računalima s operativnim sustavima Windows 8.1, Windows 8, Windows 7 ili starijim.

Upute za ispravljanje pogreške plavog ekrana PAGE FAULT IN NONPAGED AREA ili STOP 0x00000050

Upute za ispravljanje pogreške plavog ekrana PAGE FAULT IN NONPAGED AREA ili STOP 0x00000050

Pogreška plavog ekrana smrti BSOD PAGE_FAULT_IN_NONPAGED_AREA ili STOP 0x00000050 je pogreška koja se često pojavljuje nakon instaliranja upravljačkog programa hardverskog uređaja ili nakon instaliranja ili ažuriranja novog softvera, au nekim slučajevima uzrok je pogreška zbog oštećene NTFS particije.

Što učiniti kada dobijete unutarnju pogrešku Video Scheduler-a?

Što učiniti kada dobijete unutarnju pogrešku Video Scheduler-a?

Interna pogreška Video Scheduler također je smrtonosna pogreška plavog ekrana, ova se pogreška često pojavljuje na Windows 10 i Windows 8.1. Ovaj članak će vam pokazati neke načine za ispravljanje ove pogreške.

Kako spriječiti pokretanje Epic Launchera sa sustavom Windows

Kako spriječiti pokretanje Epic Launchera sa sustavom Windows

Da biste ubrzali pokretanje sustava Windows 10 i smanjili vrijeme pokretanja, u nastavku su navedeni koraci koje morate slijediti kako biste uklonili Epic iz pokretanja sustava Windows i spriječili pokretanje programa Epic Launcher sa sustavom Windows 10.

3 bolja načina za spremanje datoteka na radnu površinu

3 bolja načina za spremanje datoteka na radnu površinu

Ne biste trebali spremati datoteke na radnu površinu. Postoje bolji načini za pohranu računalnih datoteka i održavanje radne površine urednom. Sljedeći članak pokazat će vam učinkovitija mjesta za spremanje datoteka u sustavu Windows 10.