Ako vytvoriť základný webový server pomocou Go

Ako vytvoriť základný webový server pomocou Go

Go je zaujímavý programovací jazyk na vytváranie moderných webových aplikácií, ako aj systémového softvéru. Po svojom vydaní vyvolal obrovský rozruch a poháňa služby ako Docker, Kubernetes, Terraform, Dropbox a Netflix .

Robustná kolekcia vstavaných balíkov Go z neho navyše robí skvelú voľbu pre webové programovanie. Tento článok vám ukáže, ako napísať základný webový server v Go.

Importujte potrebné balíčky

Balík net/HTTP poskytuje všetko potrebné na vytvorenie webového servera a klienta. Tento balík predstavuje niekoľko užitočných funkcií na ovládanie webového programovania.

Môžete ho importovať pridaním riadku nižšie na začiatok zdrojového kódu:

import "net/http"

V článku sa tiež použije balík fmt na formátovanie reťazcov a balík denníkov na spracovanie chýb. Môžete ich importovať jednotlivo, ako je uvedené vyššie, alebo importovať všetky balíky pomocou jediného príkazu importu:

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

Po importovaní potrebných balíkov môžete pokračovať v písaní hlavnej funkcie. Pokračujte a uložte zdrojový súbor s príponou .go . Ak používate Vim , použite príkaz nižšie na uloženie a ukončenie Vim:

:wq server.go

Napíšte hlavnú funkciu

Programy Go sa nachádzajú priamo v hlavnej funkcii, ktorá sa vhodne nazýva „hlavná“. Tu budete musieť zavolať na server . Pridajte nasledujúce riadky do zdrojového kódu a uvidíte, čo robia:

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

Príkladom je definovanie hlavnej funkcie pomocou kľúčového slova func . Go má prísne pravidlá týkajúce sa umiestnenia otváracej výstuhy, takže sa uistite, že počiatočná výstuha je na správnej línii. Prvý príkaz v main definuje, že všetky webové požiadavky na koreňovú cestu ( "/" ) budú spracované indexom, funkciou typu http.HandlerFunc .

Druhý riadok spúšťa webový server cez funkciu http.ListenAndServe . Signalizuje serveru, aby neustále počúval prichádzajúce požiadavky HTTP na porte servera 8080. Druhý parameter tejto funkcie je potrebný na zablokovanie programu až do konca.

Keďže http.ListenAndServe vždy vráti chybu, príklad zabalí toto volanie do volania log.Fatal . Tento príkaz zaznamenáva všetky chybové hlásenia generované na strane servera.

Implementujte funkcie spracovania

Ako vidíte, hlavná funkcia volá index funkcie handlera na spracovanie požiadaviek klienta. Príklad však ešte nedefinoval túto funkcionalitu pre svoj server.

Pridajme potrebné príkazy, aby bola funkcia indexu použiteľná:

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

Táto funkcia používa dva rôzne argumenty typu http.ResponseWriter a http.Request . Parameter http.ResponseWriter obsahuje odpoveď servera na prichádzajúcu požiadavku vo forme objektu http.Request .

Funkcia Fprintf z balíka fmt sa používa na zobrazenie a manipuláciu s textovými reťazcami. Tento článok to používa na zobrazenie odpovede servera na webové požiadavky. Nakoniec sa prvok r.URL.Path[1:] používa na získanie údajov za koreňovou cestou.

Pridajte všetky zvyšné časti

Váš webový server Go bude pripravený, keď pridáte všetky zostávajúce komponenty. Kód bude vyzerať takto:

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

Prvý riadok je potrebný na kompiláciu tohto kódu webového servera Go ako spustiteľného súboru.

Ako vytvoriť základný webový server pomocou Go

Kompilujte tento kód webového servera Go ako spustiteľný súbor


Nastavte router Linksys so statickou IP adresou

Nastavte router Linksys so statickou IP adresou

Statická adresa IP je pevná adresa IP nakonfigurovaná v nastaveniach počítača alebo smerovača. Niektorí poskytovatelia internetových služieb (ISP) vyžadujú, aby ste na svojom počítači zadali statickú IP adresu alebo nastavenia TCP/IP smerovača, aby sa mohli pripojiť na internet.

Ako odstrániť prehliadač únosca PublicBoardSearch

Ako odstrániť prehliadač únosca PublicBoardSearch

Podľa spôsobu infekcie patrí PublicBoardSearch do kategórie únoscov prehliadača. Ide o typ malvéru, ktorý je navrhnutý tak, aby prevzal nastavenia známeho prehliadača.

Zbierka tapiet Apex Legends s vysokým rozlíšením pre počítače

Zbierka tapiet Apex Legends s vysokým rozlíšením pre počítače

Zbierka tapiet s vysokým rozlíšením pre používateľov počítačov a notebookov s plným rozlíšením od Full HD po 4K.

Čo je Localhost? Ako sa Localhost líši od 127.0.0.1?

Čo je Localhost? Ako sa Localhost líši od 127.0.0.1?

Unixový systém, tiež známy ako „loopback“, môže posielať a prijímať sieťovú komunikáciu cez virtuálne sieťové zariadenie. Počítač môže posielať správy sám sebe, čo umožňuje komunikáciu bez aktívnej siete.

5 dôvodov, prečo je v poriadku používať bezplatný antivírusový softvér

5 dôvodov, prečo je v poriadku používať bezplatný antivírusový softvér

Pravdepodobne ste už počuli príslovie, že dostanete to, za čo zaplatíte, ale čo keď príde na antivírusový softvér? Mali by ste si radšej kúpiť softvérové ​​balíky, než sa rozhodnúť pre bezplatné riešenia ochrany? Možno to tak nie je a tu je dôvod!

Aký je rozdiel medzi antivírusovým softvérom pre Windows a Mac?

Aký je rozdiel medzi antivírusovým softvérom pre Windows a Mac?

V dnešnom článku Quantrimang zhrnie populárne značky antivírusového softvéru na trhu a zistí, ako sa líšia medzi Windows PC a macOS.

4 veci, ktoré chcú používatelia vidieť vo Windowse v roku 2021

4 veci, ktoré chcú používatelia vidieť vo Windowse v roku 2021

Nie je jasné, čo prinesie Sun Valley okrem zmien a vylepšení používateľského rozhrania najvyššej úrovne. Tu je teda to, čo používatelia dúfajú, že uvidia od veľkej aktualizácie systému Windows 10 Sun Valley, ktorá bude uvedená na trh budúci rok.

Ako opraviť chybu Spustiť ako správca nefunguje v systéme Windows

Ako opraviť chybu Spustiť ako správca nefunguje v systéme Windows

Systém Windows poskytuje možnosť Spustiť ako správca, ktorá používateľom umožňuje spúšťať aplikácie a programy s oprávneniami správcu. Môžete ho použiť aj na riešenie problémov s počítačom. Čo ak však táto funkcia zlyhá a odoberie vám práva správcu?

Ako opraviť chyby na disku v systéme Windows

Ako opraviť chyby na disku v systéme Windows

Chyby súvisiace s jednotkou vášho počítača môžu zabrániť správnemu spusteniu systému a obmedziť prístup k vašim súborom a aplikáciám.

Modular Malware – Nová metóda tajného útoku na ukradnutie údajov

Modular Malware – Nová metóda tajného útoku na ukradnutie údajov

Niektoré varianty malvéru môžu používať rôzne moduly na zmenu spôsobu, akým ovplyvňujú cieľový systém. Čo je teda modulárny malvér a ako funguje?