Hvernig á að byggja grunn vefþjón með Go

Hvernig á að byggja grunn vefþjón með Go

Go er áhugavert forritunarmál til að smíða nútíma vefforrit sem og kerfishugbúnað. Það skapaði mikið suð eftir útgáfu þess og knýr þjónustu eins og Docker, Kubernetes, Terraform, Dropbox og Netflix .

Ennfremur, öflugt safn Go af innbyggðum pakka gerir það að frábæru vali fyrir vefforritun. Þessi grein mun sýna þér hvernig á að skrifa grunn vefþjón í Go.

Flyttu inn nauðsynlega pakka

Net/HTTP pakkinn veitir allt sem þarf til að búa til vefþjón og viðskiptavin. Þessi pakki sýnir nokkrar gagnlegar aðgerðir til að takast á við vefforritun.

Þú getur flutt það inn með því að bæta línunni hér að neðan við upphaf frumkóðans þíns:

import "net/http"

Greinin mun einnig nota fmt pakkann til að forsníða strengi og log pakkann til að meðhöndla villur. Þú getur flutt þá inn fyrir sig eins og sýnt er hér að ofan, eða flutt inn alla pakkana með einni innflutningsyfirlýsingu:

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

Þú getur haldið áfram að skrifa aðalaðgerðina eftir að þú hefur flutt inn nauðsynlega pakka. Haltu áfram og vistaðu frumskrána með .go endingunni . Ef þú ert að nota Vim , notaðu skipunina hér að neðan til að vista og hætta Vim:

:wq server.go

Skrifaðu aðalaðgerðina

Go forrit eru staðsett beint innan aðalaðgerðarinnar, sem kallast "aðal". Þú þarft að hringja í netþjón hér. Bættu eftirfarandi línum við frumkóðann og sjáðu hvað þær gera:

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

Dæmið er að skilgreina aðalaðgerðina með því að nota func lykilorðið . Go hefur strangar reglur um staðsetningu opnunarspelkunnar, svo vertu viss um að upphafsspelkan sé á réttri línu. Fyrsta setningin í main skilgreinir að allar vefbeiðnir að rótarslóðinni ( "/" ) verði meðhöndlaðar af index, fall af gerðinni http.HandlerFunc .

Önnur línan ræsir vefþjóninn í gegnum http.ListenAndServe aðgerðina . Það gefur þjóninum merki um að hlusta stöðugt eftir HTTP beiðnum sem berast á 8080 tengi þjónsins. Önnur færibreytan í þessari aðgerð er nauðsynleg til að loka á forritið til enda.

Þar sem http.ListenAndServe skilar alltaf villu, umlykur dæmið þetta símtal inn í log.Fatal call . Þessi yfirlýsing skráir allar villuboð sem myndast á netþjóninum.

Innleiða vinnsluaðgerðir

Eins og þú sérð kallar aðalaðgerðin á handhafaaðgerðavísitöluna til að meðhöndla beiðnir viðskiptavina. Hins vegar hefur dæmið ekki enn skilgreint þessa virkni fyrir netþjóninn sinn.

Við skulum bæta við nauðsynlegum yfirlýsingum til að gera vísitöluaðgerðina nothæfa:

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

Þessi aðgerð tekur tvær mismunandi röksemdir af gerðinni http.ResponseWriter og http.Request . http.ResponseWriter færibreytan inniheldur svar þjónsins við beiðninni sem berast, í formi http.Request hluts .

Aðgerðin Fprintf úr fmt pakkanum er notuð til að sýna og vinna með textastrengi. Greinin notar þetta til að sýna svar þjónsins við vefbeiðnum. Að lokum er r.URL.Path[1:] þátturinn notaður til að sækja gögn á eftir rótarslóðinni.

Bætið við öllum hlutunum sem eftir eru

Go vefþjónninn þinn verður tilbúinn þegar þú hefur bætt við öllum íhlutunum sem eftir eru. Kóðinn mun líta svona út:

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

Fyrsta línan er nauðsynleg til að setja saman þennan Go vefþjónskóða sem keyrsluskrá.

Hvernig á að byggja grunn vefþjón með Go

Safnaðu þessum Go vefþjónskóða saman sem keyrsluskrá


Settu upp kraftmikla skjái og teiknað veggfóður á Windows

Settu upp kraftmikla skjái og teiknað veggfóður á Windows

Í Windows Vista stýrikerfi Microsoft leyfði DreamScene að setja upp kraftmikinn bakgrunn fyrir tölvur, en átta árum síðar er það enn ekki fáanlegt á Windows 10. Hvers vegna hefur þessi siður táknað afturhvarf til fortíðar í gegnum árin og hvað getum við gert til að breyta þessu?

Hvernig á að tengja netið á milli 2 fartölva með netsnúru

Hvernig á að tengja netið á milli 2 fartölva með netsnúru

Ef við viljum tengja tvær fartölvur við netið getum við notað netsnúru og svo breytt IP tölum tölvanna tveggja og það er allt.

Hvernig á að laga Þú hefur ekki leyfi til að vista á þessum stað á Windows

Hvernig á að laga Þú hefur ekki leyfi til að vista á þessum stað á Windows

Þegar Windows sýnir villuna „Þú hefur ekki leyfi til að vista á þessum stað“ mun þetta koma í veg fyrir að þú vistir skrár í viðkomandi möppur.

Besti besti ókeypis og borgaði Syslog Server hugbúnaðurinn fyrir Windows

Besti besti ókeypis og borgaði Syslog Server hugbúnaðurinn fyrir Windows

Syslog Server er mikilvægur hluti af vopnabúr upplýsingatæknistjóra, sérstaklega þegar kemur að því að stjórna atburðaskrám á miðlægum stað.

Hvað er Villa 524 A Timeout kom upp og hvernig á að laga villuna

Hvað er Villa 524 A Timeout kom upp og hvernig á að laga villuna

Villa 524: Tími kom upp er Cloudflare-sérstakur HTTP stöðukóði sem gefur til kynna að tengingunni við netþjóninn hafi verið lokað vegna tímaleysis.

Hvað er villa 0x80070570? Hvernig á að laga þessa villu?

Hvað er villa 0x80070570? Hvernig á að laga þessa villu?

Villukóði 0x80070570 er algeng villuboð á tölvum, fartölvum og spjaldtölvum sem keyra Windows 10 stýrikerfið. Hins vegar birtist það einnig á tölvum sem keyra Windows 8.1, Windows 8, Windows 7 eða eldri.

Leiðbeiningar til að laga villuna á bláa skjánum SÍÐABILUN Á SVÆÐI sem er ekki á síðu eða STOP 0x00000050

Leiðbeiningar til að laga villuna á bláa skjánum SÍÐABILUN Á SVÆÐI sem er ekki á síðu eða STOP 0x00000050

Blue screen of death villa BSOD PAGE_FAULT_IN_NONPAGED_AREA eða STOP 0x00000050 er villa sem kemur oft upp eftir uppsetningu á vélbúnaðartæki, eða eftir uppsetningu eða uppfærslu á nýjum hugbúnaði og í sumum tilfellum er orsökin að villan er vegna skemmdrar NTFS skipting.

Hvað á að gera þegar þú færð innri villu í Video Scheduler?

Hvað á að gera þegar þú færð innri villu í Video Scheduler?

Innri villa í Video Scheduler er líka banvæn villa á bláum skjá, þessi villa kemur oft fram á Windows 10 og Windows 8.1. Þessi grein mun sýna þér nokkrar leiðir til að laga þessa villu.

Hvernig á að koma í veg fyrir að Epic Launcher ræsist með Windows

Hvernig á að koma í veg fyrir að Epic Launcher ræsist með Windows

Til að gera Windows 10 ræst hraðari og draga úr ræsingartíma eru hér að neðan skrefin sem þú þarft að fylgja til að fjarlægja Epic úr ræsingu Windows og koma í veg fyrir að Epic Launcher ræsist með Windows 10.

3 betri leiðir til að vista skrár á skjáborðinu

3 betri leiðir til að vista skrár á skjáborðinu

Þú ættir ekki að vista skrár á skjáborðinu. Það eru betri leiðir til að geyma tölvuskrár og halda skjáborðinu þínu snyrtilegu. Eftirfarandi grein mun sýna þér áhrifaríkari staði til að vista skrár á Windows 10.