Junior — Middle
Go tilida amalga oshirilgan HTTP-serverining asosiy vazifasi va ishlash prinsiplari haqida tushuntiring
sobes.tech AI
AIdan javob
Go tilida HTTP-server kiruvchi HTTP-so'rovlarni qayta ishlash va mijozlarga (brauzerlar, API-mijozlar va boshqalar) mos HTTP-javoblarni yuborish uchun mo'ljallangan. Asosiy ishlash prinsipi shundan iboratki, server ma'lum bir portda tinglaydi, so'rovlarni qabul qiladi, ularni handlerlar yordamida qayta ishlaydi va natijani qaytaradi.
Go'da HTTP-server yaratish uchun net/http paketi ishlatiladi. Asosiy komponentlar:
- Handler — so'rovni qayta ishlash uchun javob beradigan funksiya yoki obyekt,
http.Handlerinterfeysini amalga oshiradi. - ListenAndServe — serverni ishga tushiradigan va belgilangan manzilda tinglashni boshlaydigan funksiya.
Quyidagi misolda oddiy Go HTTP-serveri ko'rsatilgan:
package main
import (
"fmt"
"net/http"
)
func helloHandler(w http.ResponseWriter, r *http.Request) {
fmt.Fprintf(w, "Salom, dunyo!")
}
func main() {
http.HandleFunc("/", helloHandler) // Yo'l uchun handlerni ro'yxatdan o'tkazamiz "/"
http.ListenAndServe(":8080", nil) // 8080 portda serverni ishga tushiramiz
}
Shu tarzda, Go'da HTTP-serverni oson amalga oshirish mumkin, u samarali va gorutinalar yordamida ichki qo'llab-quvvatlash bilan yaxshi kengaytiriladi.