Junior — Middle
Обяснете основната цел и принципите на работа на HTTP сървър, реализиран на езика Go
sobes.tech AI
Отговор от AI
HTTP сървърът на Go е предназначен за обработка на входящи HTTP заявки и изпращане на съответните HTTP отговори към клиентите (браузъри, API клиенти и др.). Основният принцип на работа е, че сървърът слуша на определен порт, приема заявки, ги обработва с помощта на обработчици (handlers) и връща резултата.
В Go за създаване на HTTP сървъри се използва пакетът net/http. Основните компоненти са:
- Handler — функция или обект, който реализира интерфейса
http.Handlerи отговаря за обработката на заявката. - ListenAndServe — функция, която стартира сървъра и започва да слуша на посочения адрес.
Пример за прост HTTP сървър на Go:
package main
import (
"fmt"
"net/http"
)
func helloHandler(w http.ResponseWriter, r *http.Request) {
fmt.Fprintf(w, "Здравей, свят!")
}
func main() {
http.HandleFunc("/", helloHandler) // Регистрираме обработчик за пътя "/"
http.ListenAndServe(":8080", nil) // Стартираме сървъра на порт 8080
}
По този начин, HTTP сървърът в Go е лесен за реализиране, ефективен и добре мащабируем благодарение на вградената поддръжка за конкурентност чрез горутините.